Write a program that uses the class Calculator in Listing 9.12 to create a more powerful calculator. This calculator will allow you to save one result in memory and call the result back. The commands the calculator takes are

• e for end
• c for clear; sets result to zero
• m for save in memory; sets memory equal to result
• r for recall memory; displays the value of memory but does not change result. You should define a derived class of the class Calculator that has one more instance variable for the memory, a new main method that runs the improved calculator, a redefinition of the method handleUnknownOpException, and anything else new or redefined that you need. A sample interaction with the user is shown next. Your program need not produce identical output, but it should be similar and just as clear or even clearer.
Calculator on:
```
result = 0.0
+ 4
result + 4.0 = 4.0
updated result = 4.0
/ 2
result / 2.0 = 2.0
updated result = 2.0
m
result saved in memory
c
result = 0.0
+ 99
result + 99.0 = 99.0
updated result = 99.0
/ 3
result / 3.0 = 33.0
updated result = 33.0
r
recalled memory value = 2.0
result = 33.0
+ 2
result + 2.0 = 35.0
updated result = 35.0
e
End of program
```

Create a new class that extends Calculator, add an instance variable for memory, and add the code to implement the new features. Note that you should use the setResult() and resultValue()methods to access the instance variable result from the parent class. There should be a space between the operator and the number. The program does not catch the exceptions that occur when a non-numeric value is entered instead of a number.

See the code in Calculator.java, ImprovedCalculator.java, DivideByZeroException.java, and UnknownOpException.java.

Computer Science & Information Technology

You might also like to view...

When you assign a value of one data type to a variable of another data type, Visual Basic attempts to perform _________ type conversion.

a. string b. explicit c. implicit d. numeric

Computer Science & Information Technology

A long integer format uses _____ bits to represent the number 1,234,567,890 in binary form.

A. 12 B. 24 C. 30 D. 32

Computer Science & Information Technology