The following specifications have been derived from the instructions printed on the back of the calculator. (Image from http://www.hpmuseum.org/hp35.htm.)
Low battery lights all decimal points.
eg.Calculator | ||
volts | watts() | points() |
3.75 | .500 | false |
3.60 | .500 | false |
3.45 | .500 | false |
3.30 | .500 | true expected false actual |
Improper operations flash display. Press clx.
eg.Calculator | ||
key | x() | flash() |
100 | 100 | false |
enter | 100 | false |
0 | 0 | false |
/ | 0 expected Infinity actual | true expected false actual |
clx | 0 | false |
clx clears the display.
eg.Calculator | ||||
key | x() | y() | z() | t() |
100 | 100 | 0.0 | 100.0 | 0.0 |
enter | 100 | 100 | 0.0 | 100.0 |
enter | 100 | 100 | 100 | 0.0 |
enter | 100 | 100 | 100 | 100 |
clx | 0 | 100 | 100 | 100 |
clr clears all registers.
eg.Calculator | ||||
key | x() | y() | z() | t() |
100 | 100 | 0.0 | 100.0 | 100.0 |
enter | 100 | 100 | 0.0 | 100.0 |
enter | 100 | 100 | 100 | 0.0 |
enter | 100 | 100 | 100 | 100 |
clr | 0 | 0 | 0 | 0 |
chs changes sign of display. May be used as the first entry when entering negative numbers.
eg.Calculator | ||
key | x() | y() |
100 | 100 | 0 |
chs | -100 | 0 |
chs | 100 | 0 |
enter | 100 | 100 |
chs | -0 expected -100.0 actual | 100 |
100 | -100 expected 100.0 actual | 100 expected -100.0 actual |
eex causes next entries to become the exponent of x. For negative expoinents chs must precede digits.
The operational stack consistes of four registers (x, y, z and t). A fifth register (s) is used for constant storage.
The stack is automatically raised by an entry into x or by rcl unless the entry or rcl immediately follows clx, sto or enter.
Follwing any trig function z is duplicated into register t.
All angles are in degrees.
Example (2+3) * (4/5) / sin(30) * (4^-1.5) = 1.0000
eg.Calculator | ||
key | x() | y() |
2 | 2 | 100.0 |
enter | 2 | 2 |
3 | 3 | 2 |
+ | 5 | 2.0 |
4 | 4 | 5 |
* | 20 | 2.0 |
5 | 5 | 20 |
/ | 4 | 2.0 |
30 | 30 | 4 |
sin | .5 | 4 |
/ | 6 expected 8.000000000000002 actual | 2.0 |
-1.5 | -1.5 | 8 |
enter | -1.5 | -1.5 |
4 | 4 | -1.5 |
x^y | .125 | 8 expected -1.5 actual |
* | 1.0000 expected -0.18750000000000006 actual | 8.000000000000002 |
You can run this document as it stands right now against a calculator implemented at c2.com using the RunScript below. You will find that that the tests, the fixture and the calculator code are all not yet complete. Failing tests turn a cell red. There are two values in the cell. The top one is the expected result. The bottom is the actual result.