Modify the postfix evaluator program of Exercise 21.13 so that it can process integer operands larger than

Question:

Modify the postfix evaluator program of Exercise 21.13 so that it can process integer operands larger than 9.

Exercise 21.13

Write class PostfixEvaluator that evaluates a postfix expression such as 6 2 + 5 * 8 4 / -

The program should read a postfix expression consisting of digits and operators into a StringBuffer. The program should read the expression and evaluate it (assume it’s valid). The algorithm to evaluate a postfix expression is showing in Fig. 21.20.

Fig. 21.20

123 Append a right parenthesis ) to the end of the postfix expression. When the right-parenthesis character

In lines 4–12 above (based on the sample expression at the beginning of this exercise), if the operator is '/', the top of the stack is 4 and the next element in the stack is 40, then pop 4 into x, pop 40 into y, evaluate 40 / 4 and push the result, 10, back on the stack. This note also applies to other operators. The arithmetic operations allowed in an expression are: + (addition), - (subtraction), * (multiplication), / (division), ^ (exponentiation) and % (remainder).

Fantastic news! We've Found the answer you've been seeking!

Step by Step Answer:

Related Book For  book-img-for-question

Java How To Program Late Objects Version

ISBN: 9780136123712

8th Edition

Authors: Paul Deitel, Deitel & Associates

Question Posted: