This assignment focuses on implementing an object-oriented design to create two programs: an evaluator for mathematical expressions and a graphical user interface (GUI) for the evaluator.
The provided Evaluator class (Evaluator.java) is almost complete, and the task is to program the utility classes it relies on: Operand and Operator. Follow the code suggestions to finalize the Evaluator class implementation. The Evaluator class offers a public method, eval, which takes a String parameter representing an infix mathematical expression. It parses and evaluates the expression, returning the integer result.
Expressions consist of integer operands and operators such as +, -, *, /, ^, (, and ). Operators have predefined priorities, and the evaluator follows the rules of precedence when evaluating expressions.
Example expression: 2 + 3 * 4 evaluates to 14.
Requirements:
Implement Operand and Operator classes. Complete the Evaluator class based on code suggestions. Use the eval method to evaluate infix mathematical expressions. Develop a GUI for the evaluator. Note: Detailed instructions and priority rules are provided in the code.