object BasicCalculator { def main(args: Array[String]): Unit = { println("Welcome to the Basic Calculator!") println("Available operations: +, -, *, /") // Input print("Enter expression (e.g., 2 + 3): ") val input = scala.io.StdIn.readLine() // Parse and calculate val result = calculate(input) // Output the result println(s"Result: $result") } def calculate(expression: String): Double = { try { val parts = expression.split("\\s+") val num1 = parts(0).toDouble val operator = parts(1) val num2 = parts(2).toDouble operator match { case "+" => num1 + num2 case "-" => num1 - num2 case "*" => num1 * num2 case "/" => if (num2 != 0) num1 / num2 else throw new ArithmeticException("Division by zero") case _ => throw new IllegalArgumentException("Invalid operator") } } catch { case _: NumberFormatException => throw new IllegalArgumentException("Invalid input format") case e: Exception => println(s"Error: ${e.getMessage}") throw e } } }