There are various ways in whichcalculators interpret keystrokes. These can be categorized into two main types:
Theimmediate execution mode of operation (also known assingle-step,algebraic entry system (AES)[7] orchain calculation mode) is commonly employed on most general-purpose calculators. In most simple four-function calculators, such as theWindows calculator in Standard mode and those included with most earlyoperating systems, eachbinary operation is executed as soon as the next operator is pressed, and therefore theorder 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 andcan take order of operation into account. Also, forunary operations, like √ orx2, the number is entered first, then the operator; this is largely because the display screens on these kinds of calculators are generally composed entirely ofseven-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.
Formula | Keystrokes |
---|---|
524+372= | |
2×3+1= 1+2×3= | |
30COSx2+30SIN= 30SIN+2x30COS= |
The examples 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 forscientific calculators, whereoperator precedence is observed. Different forms of operator precedence schemes exist. In thealgebraic entry system with hierarchy (AESH),[7] the precedence of basic mathematical operators is taken into account,[7] whereas calculators withalgebraic entry system with parentheses (AESP)[7] support the entry of parentheses.[7] An input scheme known asalgebraic operating system (AOS)[7] combines both.[7] This is the name Texas Instruments uses for the input scheme used in some of its calculators.[8]
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.[9][10] When discussing these problems,Harold W. 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".[11]
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:
Mistakes can be hard to spot because:
The simplest example given by Thimbleby of a possible problem when using an immediate-execution calculator is 4 × (−5). 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. The result can be:
The effects of operator precedence, parentheses and non-commutative operators, on the sequence of button presses, are illustrated by:
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.
The potential problems with immediate-execution calculators stem from the fact that they areimperative. This means that the user must provide details ofhow 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 moredeclarative. This means that the user should be able to specify onlywhat has to be done, not how, and in which order, it has to be done.
Formula calculators are more declarative since the input formula defines the operation, eliminating the need for users to specify the step-by-step calculation process.
Declarative solutions are easier to understand than imperative solutions,[12] and there has been a long-term trend from imperative to declarative methods.[13][14] Formula calculators are part of this trend.
Many software tools for the general user, such as spreadsheets, are declarative. Formula calculators are examples of such tools.
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) 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 is a method similar to immediate execution with AESH and/or AESP, but unary operations are input into the calculator in the same order as they are written on paper.
Calculators that use infix notation tend to incorporate adot-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.
Mostgraphing calculators byCasio andTexas Instruments use this method. On itsscientific calculators,Sharp calls this methodDirect Algebraic Logic (D.A.L.),[15]Casio calls this method theVisually Perfect Algebraic Method (V.P.A.M.),[16] and Texas Instruments calls it theEquation Operating System (EOS).[8]
Formula | keystrokes | keystroke count |
---|---|---|
1+2×3= | 6 | |
SIN30+2×COS30= | 10 | |
(1+2)×(3+4)= | 12 | |
15+10+10+10= | 12 |
Inreverse Polish notation,[7] also known aspostfix notation, all operations are entered after theoperands 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 astack, one can enter formulas without the need to rearrange operands.
Hewlett-Packard'scalculators are well-known examples among calculators which use RPN. Early models, such as theHP-35, used RPN entirely without any alternative methods. Later models can switch between RPN and another notation, such as theHP-12C Platinum which includes both RPN and immediate execution (with operations performed strictly in the order in which inputs are entered), theHP 33s with both RPN and a hybrid of immediate/infix algebraic notation (operations are performed in accordance with standard order of operations, but single-operand functions are input with the operand first followed by the operator), and its successor theHP 35s with both RPN and standard algebraic infix notation.
Formula | keystrokes | keystroke count |
---|---|---|
1↵ Enter2↵ Enter3×+ 2↵ Enter3×1+ | 7 6 | |
30SIN30COS2x+ | 9 | |
1↵ Enter2+3↵ Enter4+× | 9 | |
15↵ Enter10+10+10+ 15↵ Enter10↵ Enter↵ Enter↵ Enter+++ 15ENTER^10ENTER^ENTER^+++ | 12 11 (RPL andEntry RPN)[17] 10 (Classical RPN)[17] |
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 is a particular implementation of infix notation where functions require theirparameters to be in brackets.
This method was used from the 1980s to the 1990s in BASIC programmable calculators andpocket computers. Texas Instruments would later implement the method in many of its graphing calculators, including theTI-83 andTI-84 Plus series. Mostcomputer algebra systems (CASes) also use this as the default input method.
In BASIC notation, the formula is entered as it would be entered inBASIC, using thePRINT
command – thePRINT
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.
Formula | keystrokes | keystroke count |
---|---|---|
1+2×3↵ Enter | 6 | |
SIN(30)×COS(30)↵ Enter SIN(30)×COS(30)↵ Enter | 12 16 |
For the second example, two options are given depending on if the BASIC programmable pocket computers have dedicated trigonometric keys[18] or not.[19]
Theten-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 asSharp,[20] and in software calculators like Judy's TenKey[21] used by accounting firms. Online tenkey training and certification tools are available as well,[22][23] and some businesses useten key typing speed as an employment criterion.
Formula | keystrokes | keystroke count |
---|---|---|
1+2×3=+T | 8 | |
30SIN×30COS= | 8 | |
5+3-T | 5 | |
15+10+++T | 9 |
Modern computer algebra systems, as well as many scientific and graphing calculators, allow for "pretty-printing", that is, entry of equations such thatfractions,surds andintegrals, 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 featureNatural Display orNatural textbook display,[24][25] but now usesNatural-VPAM.[26] Sharp calls thisWriteView[27] on its scientific calculators and simplyEquation Editor on its graphing calculators.[28] HP calls this itsTextbook display setting,[29] which can be used in both RPN and Algebraic mode and in both theStack and in theEquation Writer application.[30]Mathematica calls thisSemantic-Faithful Typesetting.[31]Mathcad calls thisstandard math notation.[32]Maple has aMath Equation Editor,[33] but does not have a special name for this input method. Texas Instruments calls itMathPrint,[34] incorporating it in its high-end calculators, such as theTI-Nspire series, and in 2011 added the feature to its TI-84 series with the 2.55 OS update.[35]
Formula | Keystrokes | Keystroke Count |
---|---|---|
1+2×3↵ Enter | 6 | |
SIN30→×COS30↵ Enter SIN(30)×COS(30)↵ Enter | 9 12 | |
5−3↵ Enter | 4 | |
15+10+10+10↵ 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 displaySIN(30)×COS(30)
before↵ Enter is pressed.
[…] Our marketing department had a card with a monstrous formula to demonstrate how powerful our calculators were and what postfix calculation was capable of. They challenged people to solve it on a slide rule the normal way. Well, we could all solve it on ourHP calculators but it took a few tries to get the steps accurate enough […] FinallyTexas Instruments introduced an infix 'algebraic entry' scientific calculator. […] We were all […] laughing at the arithmetic entry as being too weak for engineers. […] our big formula challenge […], sure that nobody could ever do it with the TI calculator. A challenge went up for someone to try. After a short silence I said that I'd try. […] My colleagues couldn't believe it. I told them that you just copy the formula from left to right but not one of them could see through their postfix fog. After all, these were the calculator experts of the world. They are well accustomed to thinking ahead and analyzing an expression to come up with the order of steps to take on an HP postfix calculator, and they had to remember which sub-expressions were in what order on the calculator's stack. None of them could do what I had done, forget that they have to be smart. […]