Calculator input methods: Difference between revisions

Content deleted Content added
References: improved ref
Rescuing 1 sources and tagging 0 as dead.) #IABot (v2.0.9.5
 
(25 intermediate revisions by 12 users not shown)
Line 3:
There are various ways in which [[calculator]]s 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.<ref>Microsoft's Windows Operating System Calculator Accessory; 2001. Available on a Windows PC at: Start/All Programs/Accessories/Calculator.</ref><ref>MotionNET [http://www.motionnet.com/calculator Calculator page on the Internet] {{Webarchive |url=https://web.archive.org/web/20090501082324/http://www.motionnet.com/calculator/ |date=2009-05-01}}; 2006.</ref><ref>Flow Simulation Ltd [http://www.calculator.org/jcalc98.html Virtual Calc98 page on the Internet]; 2008.</ref>
* On an '''expression''' or '''formula calculator''', one types in an expression and then presses a key, such as "=" or "Enter", to evaluate the expression.<ref>Formula Calculators Pty Ltd [Home page on the Internet]; 2009.</ref><ref>Moisey Oysgelt [http://www.alemoi.com/math JavaScript Formula Calculator page on the Internet] {{Webarchive|url=https://web.archive.org/web/20181211020248/http://www.alemoi.com/math |date=2018-12-11 }}; 2000.</ref><ref>Haxial Software Pty Ltd [http://www.haxial.com/products/calculator Calculator Product page on the Internet] {{Webarchive |url=https://web.archive.org/web/20090428221125/http://www.haxial.com/products/calculator/ |date=2009-04-28}}; 2001</ref> There are various systems for typing in an expression, as described below.
 
=={{anchor|Chain|AES|AOS}}Immediate execution==
Line 13:
|+ Examples
! Formula
! Keystrokes
! keystrokes
|-
! keystroke count
| <math>5524 -+ 3372</math>
| {{Keypress|1}} {{Keypress|5}} {{Keypress|+2}} {{Keypress|1}} {{Keypress|04}} {{Keypress|+}} {{Keypress|13}} {{Keypress|0}} {{Keypress|+7}} {{Keypress|12}} {{Keypress|0}} {{Keypress|1==}}
|-
| <math>1 + 2 \times 3</math>
Line 20 ⟶ 22:
 
{{Keypress|1}} {{Keypress|+}} {{Keypress|2}} {{Keypress|×}} {{Keypress|3}} {{Keypress|1==}}
| 6
 
6
|-
| <math>\sin 30 + 2 \times \cos 30</math>
Line 28 ⟶ 27:
 
{{Keypress|3}} {{Keypress|0}} {{Keypress|SIN}} {{Keypress|+}} {{Keypress|2}} {{Keypress|x}} {{Keypress|3}} {{Keypress|0}} {{Keypress|COS}} {{Keypress|1==}}
| 10
|-
| <math>5 - 3</math>
| {{Keypress|5}} {{Keypress|−}} {{Keypress|3}} {{Keypress|1==}}
| 4
|-
| <math>15 + 10 + 10 + 10</math>
| {{Keypress|1}} {{Keypress|5}} {{Keypress|+}} {{Keypress|1}} {{Keypress|0}} {{Keypress|+}} {{Keypress|1}} {{Keypress|0}} {{Keypress|+}} {{Keypress|1}} {{Keypress|0}} {{Keypress|1==}}
| 12
|}
 
The first<math>1 two+ 2 \times 3</math> 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 for [[scientific calculator]]s, where [[operator precedence]] is observed. Different forms of operator precedence schemes exist. In the '''algebraic entry system with hierarchy''' ('''AESH'''),<ref name="Ball_1978" /> the precedence of basic mathematical operators is taken into account,<ref name="Ball_1978" /> whereas calculators with '''algebraic entry system with parentheses''' ('''AESP''')<ref name="Ball_1978" /> support the entry of parentheses.<ref name="Ball_1978" /> An input scheme known as '''algebraic operating system''' ('''AOS''')<ref name="Ball_1978" /> combines both.<ref name="Ball_1978" /> This is the name Texas Instruments uses for the input scheme used in some of its calculators.<ref name="TI EOS vs AOS"/>
 
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.<ref name="Thimbleby_1998"/><ref name="Holmes_2003"/> 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".<ref name="PhysOrg_2005"/>
Line 51 ⟶ 41:
* 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.
 
[[File:Calculator-TI-30XA-rev2015.jpg|thumb|upright|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===
Line 77 ⟶ 65:
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 programming|declarative]]. 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 becausesince the typed-ininput formula specifiesdefines what is to bethe doneoperation, andeliminating the userneed doesfor not haveusers to provide any details ofspecify the step-by-step order in which the calculation has to be performedprocess.
 
Declarative solutions are easier to understand than imperative solutions,<ref name="Furman_2006"/> and there has been a long-term trend from imperative to declarative methods.<ref name="Watt_1990"/><ref name="Matsushita_1998"/> Formula calculators are part of this trend.
Line 120 ⟶ 108:
| 12
|}
{{clear}}
 
=={{anchor|RPN}}Reverse Polish notation==
[[File:Screenshot from 2015-09-10 21-56-23.png|thumb|right|Screenshot of an RPN Calculator program on [[Linux]].]]
[[File:HP-10C programmable calculator.jpg|left|thumb|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.]]
{{main|Reverse Polish notation|Reverse Polish Lisp}}
[[File:Screenshot from 2015-09-10 21-56-23.png|thumb|right|Screenshot of an RPN Calculator program on [[Linux]].]]
[[File:HP-10C programmable calculator.jpg|left|thumb|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''',<ref name="Ball_1978"/> also known as '''postfix notation,''' all operations are entered after the [[operand]]s 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 (data structure)|stack]], one can enter formulas without the need to rearrange operands.
Line 162 ⟶ 151:
 
{{main|BASIC}}
[[File:Heart-on-ti89-parametric.jpg|thumb|The equation entry screen on a [[TI-89 series|TI-89]], showing the brackets after the ln, sin and cos parameters. If these were left out, the equation would be interpreted as <math>\ln(\left\vert t \right\vert+\sin(t+\cos(t)))</math> instead of <math>\ln(\left\vert t \right\vert)+\sin(t)+\cos(t)</math>.]]
'''BASIC notation''' is a particular implementation of infix notation where functions require their [[function argument|parameters]] to be in brackets.
 
Line 191 ⟶ 180:
 
=={{anchor|10-Key}}Ten key notation==
{{see|Keypad}}
[[File:Sharp EL-1192D Calculator.jpg|thumb|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' [[adding machine|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 Corporation|Sharp]],<ref>{{cite web |url=http://siica.sharpusa.net/Business-Products/Calculators |title=SIICA.sharpusa.com > Resources > More Products > Calculators |website=siica.sharpusa.net}}</ref> and in software calculators like Judy's TenKey<ref>{{cite web |url=https://www.judysapps.com/TenKey.htm |title=Award-Winning Judy's TenKey Accounting Calculator for Windows |website=www.judysapps.com}}</ref> used by accounting firms. Online tenkey training and certification tools are available as well,<ref>{{cite web |url=https://www.learn2type.com/typingtest/tenkeycertificate.cfm |title=Ten Key Certificate on Learn2Type.com! |website=Learn2Type.com}}</ref><ref>{{cite web |url=http://www.abbyinc.com/abbyinc/KeyPro.asp |title=None |access-date=16 June 2023}}</ref> and some businesses use [[words per minute#Numeric entry|ten key typing speed]] as an employment criterion.
Line 218 ⟶ 208:
 
=={{anchor|Textbook}}Mathematical display==
{{See also|Prettyprint}}
 
[[File:CalculatorFractions-5550x.jpg|thumb|200x200px|A Casio ''Natural Display'' scientific calculator displaying mixed fractions and their decimal equivalents in pretty-printing.]]{{See also|Prettyprint}}
[[File:Mathematica dinis surface.png|left|thumb|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 [[Fraction (mathematics)|fractions]], [[Nth root#Definition and notation|surds]] and [[integral]]s, 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.
 
Line 231 ⟶ 221:
|-
| <math>1 + 2 \times 3</math>
| {{Keypress|1}} {{Keypress|+}} {{Keypress|2}} {{Keypress|×}} {{Keypress|3}} {{Keypress|ENTER}}
{{Keypress|ENTER}}
| 6
|-
| <math>\sin 30 \times \cos 30</math>
| {{Keypress|SIN}} {{Keypress|3}} {{Keypress|0}} {{Keypress|→}} {{Keypress|×}} {{Keypress|COS}} {{Keypress|3}} {{Keypress|0}} {{Keypress|ENTER}}
{{Keypress|ENTER}}
 
{{Keypress|SIN}} {{Keypress|(}} {{Keypress|3}} {{Keypress|0}} {{Keypress|)}} {{Keypress|×}} {{Keypress|COS}} {{Keypress|(}} {{Keypress|3}} {{Keypress|0}} {{Keypress|)}}
Line 249 ⟶ 237:
|-
| <math>15+10+10+10</math>
| {{Keypress|1}} {{Keypress|5}} {{Keypress|+}} {{Keypress|1}} {{Keypress|0}} {{Keypress|+}} {{Keypress|1}} {{Keypress|0}} {{Keypress|+}} {{Keypress|1}} {{Keypress|0}} {{Keypress|ENTER}}
{{Keypress|ENTER}}
| 12
|}
Line 277 ⟶ 264:
<ref name="Watt_1990">{{cite book |title=Programming language concepts and paradigms |author-first=David A. |author-last=Watt |publisher=[[Prentice Hall]] |date=1990 |edition= |series=[[Prentice Hall International Series in Computer Science]] |isbn=978-0-13728874-8}}</ref>
<ref name="Matsushita_1998">{{cite web |title=Expressive Power of Declarative Programming Languages |author-first=Tatsuru |author-last=Matsushita |type=PhD thesis |publisher=Department of Computer Science, University of York |date=October 1998 |url=https://citeseerx.ist.psu.edu/pdf/692970d16d93c76d57458a77fc2231cc94d9db97 |access-date=2023-09-21 |url-status=live |archive-url=https://web.archive.org/web/20230921201617/https://citeseerx.ist.psu.edu/pdf/692970d16d93c76d57458a77fc2231cc94d9db97 |archive-date=2023-09-21}}</ref>
<ref name="HP_2012">{{cite journal |title=HP RPN Evolves |author-first=Richard J. |author-last=Nelson |journal=HP Solve |publisher=[[Hewlett-Packard Development Company, L.P.]] |date=April 2012 |number=27 |pages=42–45 |url=http://h20331.www2.hp.com/hpsub/downloads/S07%20HP%20RPN%20Evolves%20V5b.pdf |access-date=2022-10-20 |url-status=live |archive-url=https://web.archive.org/web/20221020173134/http://h20331.www2.hp.com/hpsub/downloads/S07%20HP%20RPN%20Evolves%20V5b.pdf |archive-date=2022-10-20}} [https://web.archive.org/save/http://h20331.www2.hp.com/hpsub/downloads/HP_Calculator_eNL_04_April_2012%2520(2).pdf] (4 of 56 pages)</ref>
}}
 
Line 288 ⟶ 275:
* {{cite journal |title=Hand Calculator Performance Under Interrupted Operation |author-first=John G. |author-last=Kreifeldt |___location=Department of Engineering Design, Tufts University, Medford, Massachusetts, USA |date=October 1981 |journal=Proceedings of the Human Factors Society Annual Meeting |volume=25 |number=1 |doi=10.1177/107118138102500187 |pages=329–332 |s2cid=106904297}} (4 pages)
* {{cite journal |title=The machine inside the machine: Users' models of pocket calculators |author-first=Richard M. |author-last=Young |date=July 1981 |journal=[[:d:Q15759804|International Journal of Man-Machine Studies]] |issn=0020-7373 |volume=15 |issue=1 |doi=10.1016/S0020-7373(81)80023-5 |pages=51–85}} (35 pages)
* {{cite book |title=Adaptive Control of Ill-Defined Systems |chapter=Artificial Intelligence: Conceptual Models of Ill-Defined Systems |author-first=Richard M. |author-last=Young |editor-first1=Oliver Gordon |editor-last1=Selfridge |editor-link1=Oliver Gordon Selfridge |editor-first2=Edwina L. |editor-last2=Rissland |editor-link2=:d:Q97961494Edwina Rissland |editor-first3=Michael Anthony |editor-last3=Arbib |editor-link3=Michael Anthony Arbib |edition=1st illustrated |date=1984 |series=NATO Conference Series (NATOCS, volume 16); II Systems Science (SYSC) |lccn=83-17699 |isbn=978-1-4684-8943-9 |doi=10.1007/978-1-4684-8941-5 |publisher=[[Plenum Press]], [[Plenum Publishing Corporation]] / Springer |publication-place=New York & London |___location=University of Massachusetts, Amherst, Massachusetts, USA; MRC Applied Psychology Unit, Cambridge, UK |pages=165–176 |url=https://books.google.com/books?id=e5XuBwAAQBAJ |chapter-url=https://books.google.com/books?id=e5XuBwAAQBAJ&pg=PA165 |access-date=2022-12-26}} (12 pages)
* {{cite journal |title=Calculator logic: when and why is RPN superior to algebraic? |author-first1=Errol |author-last1=Hoffman |author-first2=Patrick |author-last2=Ma |author-first3=Jason |author-last3=See |author-first4=Chee Kee |author-last4=Yong |author-first5=Jason |author-last5=Brand |author-first6=Matthew |author-last6=Poulton |journal=[[Applied Ergonomics]] |issn=0003-6870 |eissn=1872-9126 |publisher=[[Elsevier Science Ltd.]] |volume=25 |issue=5 |date=1994 |doi=10.1016/0003-6870(94)90048-5 |pages=327–333}} (7 pages)
* {{cite web |title=In our AP C++ class we are trying to use virtual stacks to develop an infix to postfix calculator translator. To study how exactly the infix notation and postfix notation differ we used one of the very old HP calculators. I was wondering that when you worked for HP did you help develop some postfix calculators? Do you prefer infix notation or postfix? |editor-first=Stephen Gary "Woz" |editor-last=Wozniak |editor-link=Stephen Gary Wozniak |date=2012 |orig-date=2000-02-13 |work=woz.org |department=Letters-General Questions Answered |url=http://archive.woz.org:80/letters/general/57.html |access-date=2023-09-23 |url-status=dead |archive-url=https://web.archive.org/web/20121104143556/http://archive.woz.org:80/letters/general/57.html |archive-date=2012-11-04 |quote=[…] 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 our [[HP calculator]]s but it took a few tries to get the steps accurate enough […] Finally [[Texas 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. […]}}
Line 294 ⟶ 281:
* {{cite web |title="Order of operations" and other oddities in school mathematics |author-first=Hung-Hsi |author-last=Wu |author-link=:d:Q102116088 |___location=Berkeley, California, USA |publisher=Department of Mathematics, University of California |date=2007-09-13 |orig-date=2004-06-01 |url=https://math.berkeley.edu/~wu/order5.pdf |access-date=2007-07-03
|url-status=live |archive-url=https://web.archive.org/web/20230918204521/https://math.berkeley.edu/~wu/order5.pdf |archive-date=2023-09-18}} (11 pages)
* {{cite book |title=Order of Operations and RPN |author-first=Greg |author-last=Vanderbeek |date=July 2007 |type=Expository paper |series=Master of Arts in Teaching (MAT) Exam Expository Papers |id=Paper 46 |publisher=[[University of Nebraska Press]] |___location=[[Lincoln, Nebraska]], USA |url=https://digitalcommons.unl.edu/cgi/viewcontent.cgi?article=1045&context=mathmidexppap |access-date=2020-06-14 |url-status=live |archive-url=https://web.archive.org/web/20200614191608/https://digitalcommons.unl.edu/cgi/viewcontent.cgi?article=1045&context=mathmidexppap |archive-date=2020-06-14}} (1+2+17 pages)
* {{cite book |title=Keller, Stack und automatisches Gedächtnis – eine Struktur mit Potenzial |language=de |trans-title=Cellar, stack and automatic memory - a structure with potential |editor-first1=Michael |editor-last1=Fothe |editor-first2=Thomas |editor-last2=Wilke |type=Tagungsband zum Kolloquium 14. November 2014 in Jena |___location=Jena, Germany |volume=T-7 |series=GI Series: Lecture Notes in Informatics (LNI) – Thematics |publisher=[[Gesellschaft für Informatik]] (GI) / Köllen Druck + Verlag GmbH |isbn=978-3-88579-426-4 |issn=1614-3213 |date=2015 |orig-date=2014-11-14 |publication-place=Bonn, Germany |url=https://dl.gi.de/bitstream/handle/20.500.12116/4381/lni-t-7.pdf?sequence=1&isAllowed=y |access-date=2020-04-12 |url-status=live |archive-url=https://web.archive.org/web/20200412122706/https://dl.gi.de/bitstream/handle/20.500.12116/4381/lni-t-7.pdf?sequence=1&isAllowed=y |archive-date=2020-04-12}} [https://web.archive.org/web/20221210100112/https://dl.gi.de/handle/20.500.12116/4374/browse?type=title&sort_by=4] (77 pages)
 
{{Calculator navbox}}
 
{{DEFAULTSORT:Calculator Input Methods}}
[[Category:Calculators]]