BREAKING NEWS
Calculator input methods

## Summary

There are various ways in which calculators interpret keystrokes. These can be categorized into two main types:

• On a single-step or immediate-execution calculator, the user presses a key for each operation, calculating all the intermediate results, before the final value is shown.[1][2][3]
• On an expression or formula calculator, one types in an expression and then presses a key, such as "=" or "Enter", to evaluate the expression.[4][5][6] There are various systems for typing in an expression, as described below.

## Immediate execution

The TI-108 is a simple four-function calculator which uses single-step execution.

The immediate execution mode of operation (also known as single-step, algebraic entry system (AES)[7] or chain calculation mode) is commonly employed on most general-purpose calculators. In most simple four-function calculators, such as the Windows calculator in Standard mode and those included with most early operating systems, each binary operation is executed as soon as the next operator is pressed, and therefore the order of operations in a mathematical expression is not taken into account. Scientific calculators, including the Scientific mode in the Windows calculator and most modern software calculators, have buttons for brackets and can take order of operation into account. Also, for unary operations, like √ or x2, the number is entered first, then the operator; this is largely because the display screens on these kinds of calculators are generally composed entirely of seven-segment characters and thus capable of displaying only numbers, not the functions associated with them. This mode of operation also makes it impossible to change the expression being input without clearing the display entirely.

Examples
Formula keystrokes keystroke count
${\displaystyle 1+2\times 3}$  2 × 3 + 1 =

1 + 2 × 3 =

6

6

${\displaystyle \sin 30\times \cos 30}$  3 0 SIN × 3 0 COS =

SIN 3 0 x COS 3 0=

8
${\displaystyle 5-3}$  5 3 = 4
${\displaystyle 15+10+10+10}$  1 5 + 1 0 + 1 0 + 1 0 = 12

The first and second example have been given twice. The first version is for simple calculators, showing how it is necessary to rearrange operands in order to get the correct result. The second version is for scientific calculators, where operator precedence is observed.

Immediate-execution calculators are based on a mixture of infix and postfix notation: binary operations are done as infix, but unary operations are postfix. Because operators are applied one-at-a-time, the user must work out which operator key to use at each stage, and this can lead to problems.[8][9] When discussing these problems, Harold Thimbleby has pointed out that button-operated calculators "require numbers and operation signs to be punched in a certain order, and mistakes are easy to make and hard to spot".[10]

Problems can occur because, for anything but the simplest calculation, in order to work out the value of a written formula, the user of a button-operated calculator is required to:

• Rearrange the formula so that the value can be calculated by pressing buttons one at a time, while taking operator precedence and parentheses into account.
• Use memory buttons to ensure that operations are applied in the correct order.
• Use the special buttons ± and 1/x, that do not correspond to operations in the formula, for non-commutative operators.

Mistakes can be hard to spot because:

• For the above reasons, the sequence of button presses may bear little resemblance to the original formula.
• The operation carried out when a button is pressed is not always the same as the button, but could be a previously entered operation.

This TI-30XA scientific calculator uses immediate execution. It has a one-line, seven-segmented display, and cannot display operands or allow the entries to be edited.

### Examples of difficulties

The simplest example given by Thimbleby of a possible problem when using an immediate-execution calculator is 4 × (−5).[11] As a written formula the value of this is −20 because the minus sign is intended to indicate a negative number, rather than a subtraction, and this is the way that it would be interpreted by a formula calculator.

On an immediate-execution calculator, depending on which keys are used and the order in which they are pressed, the result for this calculation may be different. Also there are differences between calculators in the way a given sequence of button presses is interpreted.[12] The result can be:

• −1: If the subtraction button is pressed after the multiplication ×, it is interpreted as a correction of the × rather than a minus sign, so that 4 − 5 is calculated.
• 20: If the change-sign button ± is pressed before the 5, it isn't interpreted as −5, and 4 × 5 is calculated.
• −20: To get the right answer, ± must be pressed last, even though the minus sign isn't written last in the formula.[13]

The effects of operator precedence, parentheses and non-commutative operators, on the sequence of button presses, are illustrated by:

• 4 − 5 × 6: The multiplication must be done first, and the formula has to be rearranged and calculated as −5 × 6 + 4. So ± and addition have to be used rather than subtraction. When + is pressed, the multiplication is performed.
• 4 × (5 + 6): The addition must be done first, so the calculation carried out is (5 + 6) × 4. When × is pressed, the addition is performed.
• 4 / (5 + 6): One way to do this is to calculate (5 + 6) / 4 first and then use the 1/x button, so the calculation carried out is 1/[(5 + 6)/4].
• 4 × 5 + 6 × 7: The two multiplications must be done before the addition, and one of the results must be put into memory.[13]

These are only simple examples, but immediate-execution calculators can present even greater problems in more complex cases. In fact, Thimbleby claims that users may have been conditioned to avoid them for all but the simplest calculations.[14]

### Declarative and imperative tools

The potential problems with immediate-execution calculators stem from the fact that they are imperative.[15] This means that the user must provide details of how the calculation has to be performed.

Thimbleby has identified the need for a calculator that is more automatic and therefore easier to use, and he states that such a calculator should be more declarative.[16] This means that the user should be able to specify only what has to be done, not how, and in which order, it has to be done.

Formula calculators are more declarative because the typed-in formula specifies what is to be done, and the user does not have to provide any details of the step-by-step order in which the calculation has to be performed.

Declarative solutions are easier to understand than imperative solutions,[16][17] and there has been a long-term trend from imperative to declarative methods.[18][19] Formula calculators are part of this trend.

Many software tools for the general user, such as spreadsheets, are declarative.[20] Formula calculators are examples of such tools.

### Using the full power of the computer

Software calculators that simulate hand-held, immediate execution calculators do not use the full power of the computer: "A computer is a far more powerful device than a hand-held calculator, and thus it is illogical and limiting to duplicate hand-held calculators on a computer." (Haxial Software Pty Ltd)[21] Formula calculators use more of the computer's power because, besides calculating the value of a formula, they work out the order in which things should be done.

## Infix notation

A Sharp scientific calculator using infix notation. Note the formula on the dot-matrix line above and the answer on the seven-segment line below, as well as the arrow keys allowing the entry to be reviewed and edited.

This calculator program has accepted input in infix notation, and returned the answer ${\displaystyle 3{\text{,}}8{\overline {6}}}$ . Here the comma is a decimal separator.

Infix notation is a method where unary operations are input into the calculator in the same order as they are written on paper. Different forms of this input scheme exist. In the algebraic entry system with hierarchy (AESH),[7] the precedence of basic mathematical operators is taken into account,[7] whereas calculators with algebraic entry system with parentheses (AESP)[7] support the entry of parentheses.[7] An input scheme known as algebraic operating system (AOS)[7] combines both.[7]

Calculators that use infix notation tend to incorporate a dot-matrix display to display the expression being entered, frequently accompanied by a seven-segment display for the result of the expression. Because the expression is not evaluated until it is fully entered, there is provision for editing the entered expression at any point prior to evaluation, as well as replaying entered expressions and their answers from memory.

Most graphing calculators by Casio and Texas Instruments use this method. On its scientific calculators, Sharp calls this method Direct Algebraic Logic (D.A.L.),[22] and Casio calls this method the Visually Perfect Algebraic Method (V.P.A.M.).[23]

Examples
Formula keystrokes keystroke count
${\displaystyle 1+2\times 3}$  1 + 2 × 3 = 6
${\displaystyle \sin 30\times \cos 30}$  SIN 3 0 × COS 3 0 = 8
${\displaystyle (1+2)\times (3+4)}$  ( 1 + 2 ) × ( 3 + 4 ) = 12
${\displaystyle 15+10+10+10}$  1 5 + 1 0 + 1 0 + 1 0 = 12

## Reverse Polish notation

Screenshot of an RPN Calculator program on Linux.

The Hewlett-Packard Voyager series of calculators all use RPN input. The "Enter" key is used here to push the value on the display onto the stack.

In reverse Polish notation,[7] also known as postfix notation, all operations are entered after the operands on which the operation is performed. Reverse Polish notation is parenthesis-free, which usually leads to fewer button presses needed to perform an operation. By the use of a stack, one can enter formulas without the need to rearrange operands.

Hewlett-Packard's calculators are well-known examples among calculators which use RPN. Early models, such as the HP-35, used RPN entirely without any alternative methods. Later models, such as the HP 35s, also had infix notation and could conveniently allow users to switch between it and RPN.

Examples
Formula keystrokes keystroke count
${\displaystyle 1+2\times 3}$  1 ↵ Enter 2 ↵ Enter 3 × +

2 ↵ Enter 3 × 1 +

7
6
${\displaystyle \sin 30\times \cos 30}$  3 0 SIN 3 0 COS × 7
${\displaystyle (1+2)\times (3+4)}$  1 ↵ Enter 2 + 3 ↵ Enter 4 + × 9
${\displaystyle 15+10+10+10}$  1 5 ↵ Enter 1 0 + 1 0 + 1 0 +

1 5 ↵ Enter 1 0 ↵ Enter ↵ Enter ↵ Enter + + +

1 5 ENTER^ 1 0 ENTER^ ENTER^ + + +

12
11 (RPL and Entry RPN)[24]
10 (Classical RPN)[24]

Note: The first example illustrates one of the few cases where reverse Polish notation does not use the fewest button presses – provided one does not rearrange operands. If one would do so then only six keystrokes would be needed.

## BASIC notation

The equation entry screen on a TI-89, showing the brackets after the ln, sin and cos parameters. If these were left out, the equation would be interpreted as ${\displaystyle \ln(\left\vert t\right\vert +\sin(t+\cos(t)))}$  instead of ${\displaystyle \ln(\left\vert t\right\vert )+\sin(t)+\cos(t)}$

BASIC notation is a particular implementation of infix notation where functions require their parameters to be in brackets.

This method was used from the 1980s to the 1990s in BASIC programmable calculators and pocket computers. Texas Instruments would later implement the method in many of its graphing calculators, including the TI-83 and TI-84 Plus series. Most computer algebra systems also use this as the default input method.

In BASIC notation, the formula is entered as it would be entered in BASIC, using the PRINT command – the PRINT command itself being optional. On pressing "ENTER" or "=", the result would be displayed. As with standard infix notation, typing mistakes in the entered formula could be corrected using the same editor function as the one used when programming the calculator.

Examples
Formula keystrokes keystroke count
${\displaystyle 1+2\times 3}$  1 + 2 × 3 ↵ Enter 6
${\displaystyle \sin 30\times \cos 30}$  SIN ( 3 0 ) × COS ( 3 0 ) ↵ Enter

S I N ( 3 0 ) × C O S ( 3 0 ) ↵ Enter

12

16

For the second example, two options are given depending on if the BASIC programmable pocket computers have dedicated trigonometric keys[25] or not.[26]

## Ten key notation

This printing calculator made by Sharp uses ten-key notation. Notice the size and placement of the keys, including the extra-large "+/=" and the red "-/=" keys.

The ten-key notation input method first became popular with accountants' paper tape adding machines. It generally makes the assumption that entered numbers are being summed, although other operations are supported. Each number entered is followed by its sign (+/−), and a running total is kept. An assumption is made that the last operand can be implicitly used next, so by just entering another + (for example), one will reuse the most recent operand. Ten key input mode is available in printing calculators from companies such as Sharp,[27] and in software calculators like Judy's TenKey[28] used by accounting firms. Online tenkey training and certification tools are available as well,[29][30] and some businesses use ten key typing speed as an employment criterion.

Examples
Formula keystrokes keystroke count
${\displaystyle 1+2\times 3}$  1 + 2 × 3 = + T 8
${\displaystyle \sin 30\times \cos 30}$  3 0 SIN × 3 0 COS = 8
${\displaystyle 5-3}$  5 + 3 - T 5
${\displaystyle 15+10+10+10}$  1 5 + 1 0 + + + T 9

## Mathematical display

A Casio Natural Display scientific calculator displaying mixed fractions and their decimal equivalents in pretty-printing.

Pretty-printed commands used to plot Dini's surface in Mathematica.

Modern computer algebra systems, as well as many scientific and graphing calculators, allow for "pretty-printing", that is, entry of equations such that fractions, surds and integrals, etc. are displayed in the way they would normally be written. Such calculators are generally similar in appearance to those using infix notation, but feature a full dot-matrix display and templates for entering expressions, which are navigated using arrow keys on the calculator. The templates contain spaces for values or expressions to be entered, and empty values would typically result in a syntax error, making it more cumbersome to navigate than standard infix notation; standard infix notation is often an option on such calculators as well.

Casio used to call this feature Natural Display or Natural textbook display,[31][32] but now uses Natural-VPAM.[33] Sharp calls this WriteView[34] on its scientific calculators and simply Equation Editor on its graphing calculators.[35] HP calls this its Textbook display setting,[36] which can be used in both RPN and Algebraic mode and in both the Stack and in the Equation Writer application.[37] Mathematica calls this Semantic-Faithful Typesetting.[38] Mathcad calls this standard math notation.[39] Maple has a Math Equation Editor,[40] but does not have a special name for this input method. Texas Instruments calls it MathPrint,[41] incorporating it in its high-end calculators, such as the TI-Nspire series, and in 2011 added the feature to its TI-84 series with the 2.55 OS update.[42]

Examples
Formula keystrokes keystroke count
${\displaystyle 1+2\times 3}$  1 + 2 × 3 ↵ Enter 6
${\displaystyle \sin 30\times \cos 30}$  SIN 3 0 × COS 3 0 ↵ Enter

SIN ( 3 0 ) × COS ( 3 0 ) ↵ Enter

9

12

${\displaystyle 5-3}$  5 3 ↵ Enter 4
${\displaystyle 15+10+10+10}$  1 5 + 1 0 + 1 0 + 1 0 ↵ Enter 12

For the second example, two options are given, depending on whether the calculators will automatically insert needed parentheses or not. Machines equipped with an alphanumeric display will display SIN(30)×COS(30) before ↵ Enter is pressed.

## References

1. ^ Microsoft’s Windows Operating System Calculator Accessory; 2001. Available on a Windows PC at: Start/All Programs/Accessories/Calculator.
2. ^ MotionNET Calculator page on the Internet Archived 1 May 2009 at the Wayback Machine; 2006.
3. ^ Flow Simulation Ltd Virtual Calc98 page on the Internet; 2008.
4. ^ Formula Calculators Pty Ltd [Home page on the Internet]; 2009.
5. ^ Moisey Oysgelt JavaScript Formula Calculator page on the Internet; 2000.
6. ^ Haxial Software Pty Ltd Calculator Product page on the Internet Archived 28 April 2009 at the Wayback Machine; 2001
7. Ball, John A. (1978). Algorithms for RPN calculators (1 ed.). Cambridge, Massachusetts, USA: Wiley-Interscience, John Wiley & Sons, Inc. ISBN 0-471-03070-8.
8. ^ Harold Thimbleby (September 1998). "A new calculator and why it is necessary" (PDF). Computing Science, Middlesex University, London, UK. Archived from the original (PDF) on 2007-02-07. Retrieved 2009-05-04.
9. ^ Neville Holmes. Truth and Clarity in Arithmetic Archived 7 October 2006 at the Wayback Machine, University of Tasmania; 2003.
10. ^ Professor devises easier calculator; www.physorg.com. June 2005.
11. ^ Reference 11, section 2.
12. ^ References 4, 5 and 6[clarify].
13. ^ a b Reference 4[clarify].
14. ^ Reference 11[clarify], section 3.2, second paragraph.
15. ^ Reference 11[clarify], sections 1 and 10.
16. ^ a b Reference 11[clarify].
17. ^ Roy E. Furman (July 2006). "Declarative Programming – Strategies for Solving Software Problems". Archived from the original on 2012-07-23. Retrieved 2009-05-04.
18. ^ David A. Watt. Programming language concepts and paradigms, Prentice Hall; 1990. Citation 13 at http://citeseer.ist.psu.edu/context/14802/0.
19. ^ Tatsuru Matsushita. Expressive Power of Declarative Programming Languages, PhD thesis, Department of Computer Science, University of York; October 1998. Citation 13 at http://citeseer.ist.psu.edu/context/14802/0.
20. ^ Reference 20[clarify], paragraph 6.
21. ^ Reference 3, second paragraph
22. ^ "SHARP". global.sharp.
23. ^ "General - Standard Scientific calculators - Calculators - CASIO". support.casio.com.
25. ^ The picture of the Casio FX-880P shows sin, cos and tan keys on the second row right hand side.
26. ^ The picture of the Sharp PC-1245 shows no trigonometric keys
27. ^ "SIICA.sharpusa.com > Resources > More Products > Calculators". siica.sharpusa.net.
28. ^ "Award-Winning Judy's TenKey Accounting Calculator for Windows". www.judysapps.com.
29. ^ "Ten Key Certificate on Learn2Type.com!". Learn2Type.com.
30. ^ http://www.abbyinc.com/abbyinc/KeyPro.asp
31. ^ Natural textbook display - Scientific calculator.
32. ^ "CASIO WEW Worldwide Education Website". CASIO WEW Worldwide Education Website.
33. ^ Natural Visually Perfect Algebraic Mode (V.P.A.M) - Scientific calculator Archived 27 April 2009 at the Wayback Machine.
34. ^ WriteView.
35. ^ Sharp Graphing equation editor.
36. ^ Inc., HP. "HP Support document - HP Support Center". h20564.www2.hp.com. Archived from the original on 2016-08-26. Retrieved 2016-08-23.