A stack Evaluating the postfix expression (Using Linked list Implementation)
This step will use the queue (PostQueue) that was the result of the infix to postfix conversion, and a stack. The algorithm proceeds as follows:
1. Make an empty stack (Using Linked list Implementation)
2. Scan the postfix expression (PostQueue) one item at a time:
- If it is an operand, push onto the stack.
- If it is an operator,
- pop two numbers from the stack,
- apply the operator, and
- push the result back onto the stack.
- If the stack does not have enough operands, the expression is invalid.
- At the end of input, check the stack. If it has just one item, that is the answer. Else, the expression is invalid.
Consider Postfix the expression 2 3 4 + 9 * 1 - +
Input file:
The input file will contain several lines of equations in infix format. Each line can use several of the available mathematical: addition [+], subtraction [-], multiplication [*],division [/], parentheses and
Output file:
For each calculation, print the following to the output file
- The postfix notation (the result from Part1 )
- The result of the calculation (the result from Part2 )