import java.util.*;
public class Calculator {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("Enter an expression: ");
String expression = scanner.nextLine();
scanner.close();
double result = calculate(expression);
System.out.println("Result: " + result);
}
public static double calculate(String expression) {
try {
// Magproseso ng mga operators sa expression gamit ang order of operations (PEMDAS o BIDMAS)
expression = expression.replace(" ", ""); // Alisin ang mga espasyo sa expression
expression = expression.replace("x", "*"); // Palitan ang 'x' ng '*' upang maging valid na operator
expression = expression.replace(",", "."); // Palitan ang ',' ng '.' upang maging decimal separator
// Magcompute ng expression gamit ang built-in JavaScript engine
javax.script.ScriptEngineManager manager = new javax.script.ScriptEngineManager();
javax.script.ScriptEngine engine = manager.getEngineByName("JavaScript");
Object result = engine.eval(expression);
return Double.parseDouble(result.toString());
} catch (Exception e) {
System.out.println("Error: Invalid expression");
return Double.NaN; // Ibalik ang NaN (Not a Number) kung ang expression ay hindi wasto
}
}
}