Калькуляторы интерпретируют нажатия клавиш
по-разному . Их можно разделить на два основных типа:
На калькуляторе с одношаговым или немедленным выполнением пользователь нажимает клавишу для каждой операции, вычисляя все промежуточные результаты, прежде чем отобразится окончательное значение. [1] [2] [3]
На калькуляторе выражений или формул нужно ввести выражение, а затем нажать клавишу, например «=» или «Enter», чтобы вычислить значение выражения. [4] [5] [6] Существуют различные системы ввода выражений, описанные ниже.
Немедленное исполнение
Режим немедленного выполнения операции (также известный как одношаговый , алгебраическая система ввода ( AES ) [7] или режим цепного вычисления ) обычно используется в большинстве калькуляторов общего назначения. В большинстве простых калькуляторов с четырьмя функциями, таких как калькулятор Windows в стандартном режиме и тех, которые были включены в большинство ранних операционных систем , каждая двоичная операция выполняется, как только нажимается следующий оператор, и поэтому порядок операций в математическом выражении не принимается во внимание. Научные калькуляторы , включая научный режим в калькуляторе Windows и большинстве современных программных калькуляторов, имеют кнопки для скобок и могут учитывать порядок операций. Кроме того, для унарных операций , таких как √ или x 2 , сначала вводится число, а затем оператор; это в значительной степени связано с тем, что экраны дисплеев на таких типах калькуляторов, как правило, полностью состоят из семисегментных символов и, таким образом, способны отображать только числа, а не связанные с ними функции. Этот режим работы также делает невозможным изменение вводимого выражения без полной очистки дисплея.
Примеры были приведены дважды. Первая версия предназначена для простых калькуляторов, показывающая, как необходимо переставлять операнды, чтобы получить правильный результат. Вторая версия предназначена для научных калькуляторов , где соблюдается приоритет операторов . Существуют различные формы схем приоритета операторов. В алгебраической системе ввода с иерархией ( AESH ) [7] учитывается приоритет основных математических операторов, [7] тогда как калькуляторы с алгебраической системой ввода со скобками ( AESP ) [7] поддерживают ввод скобок. [7] Схема ввода, известная как алгебраическая операционная система ( AOS ) [7] , объединяет обе. [7] Это название Texas Instruments использует для схемы ввода, используемой в некоторых своих калькуляторах. [8]
Калькуляторы с немедленным выполнением основаны на смеси инфиксной и постфиксной нотации: бинарные операции выполняются как инфиксная, а унарные — как постфиксная. Поскольку операторы применяются по одному, пользователь должен решить, какую клавишу оператора использовать на каждом этапе, и это может привести к проблемам. [9] [10] При обсуждении этих проблем Гарольд В. Тимблби указал, что кнопочные калькуляторы «требуют, чтобы числа и знаки операций набирались в определенном порядке, и ошибки легко допустить и трудно обнаружить». [11]
Проблемы могут возникнуть, поскольку для любого расчета, за исключением самых простых, чтобы вычислить значение записанной формулы, пользователю кнопочного калькулятора необходимо:
Перепишите формулу так, чтобы значение можно было вычислить, нажимая кнопки по одной, учитывая при этом приоритет операторов и скобки.
Используйте кнопки памяти, чтобы гарантировать, что операции выполняются в правильном порядке.
Для некоммутативных операторов используйте специальные кнопки и , не соответствующие операциям в формуле.±1/x
Ошибки бывает трудно обнаружить, потому что:
По указанным выше причинам последовательность нажатия кнопок может иметь мало общего с оригинальной формулой.
Операция, выполняемая при нажатии кнопки, не всегда совпадает с кнопкой, но может быть ранее введенной операцией.
Примеры трудностей
Простейший пример возможной проблемы при использовании калькулятора с немедленным выполнением, приведенный Тимблби, — это 4 × (−5). Как записанная формула, значение этого равно −20, поскольку знак минус предназначен для указания отрицательного числа, а не вычитания, и именно так это будет интерпретироваться калькулятором формул.
На калькуляторе с немедленным выполнением, в зависимости от того, какие клавиши используются и в каком порядке они нажимаются, результат этого расчета может быть разным. Также существуют различия между калькуляторами в том, как интерпретируется заданная последовательность нажатий кнопок. Результат может быть:
−1: Если кнопка вычитания нажата после умножения , это интерпретируется как исправление знака, а не как знак минус, поэтому вычисляется 4 − 5.−××
20: Если кнопка смены знака нажата до цифры 5, она не интерпретируется как −5, а вычисляется 4 × 5.±
−20: Чтобы получить правильный ответ, необходимо нажать в последнюю очередь, даже если знак минус не написан последним в формуле.±
Влияние приоритета операторов, скобок и некоммутативных операторов на последовательность нажатий кнопок проиллюстрировано следующим образом:
4 − 5 × 6: Сначала необходимо выполнить умножение, а формулу необходимо переставить и вычислить как −5 × 6 + 4. Поэтому вместо вычитания следует использовать ± и сложение. При нажатии выполняется умножение.+
4 × (5 + 6): Сначала необходимо выполнить сложение, поэтому расчет будет следующим: (5 + 6) × 4. При нажатии выполняется сложение.×
4 / (5 + 6): Один из способов сделать это — сначала вычислить (5 + 6) / 4, а затем нажать кнопку, в результате чего получится 1/[(5 + 6)/4].1/x
4 × 5 + 6 × 7: Перед сложением необходимо выполнить два умножения, и один из результатов необходимо сохранить в памяти.
Это только простые примеры, но калькуляторы немедленного выполнения могут представлять еще большие проблемы в более сложных случаях. Фактически, Тимблби утверждает, что пользователи могли быть приучены избегать их для всех, кроме самых простых вычислений.
Декларативные и императивные инструменты
Потенциальные проблемы с калькуляторами немедленного выполнения вытекают из того факта, что они являются императивными . Это означает, что пользователь должен предоставить подробную информацию о том, как должен выполняться расчет.
Тимблби определил необходимость в калькуляторе, который был бы более автоматическим и, следовательно, более простым в использовании, и он утверждает, что такой калькулятор должен быть более декларативным . Это означает, что пользователь должен иметь возможность указать только то, что должно быть сделано, а не то, как и в каком порядке это должно быть сделано.
Формульные калькуляторы более декларативны, поскольку введенная формула определяет, что должно быть сделано, и пользователю не нужно предоставлять никаких подробностей о пошаговом порядке, в котором должен выполняться расчет.
Декларативные решения легче понять, чем императивные решения, [12] и существует долгосрочная тенденция перехода от императивных методов к декларативным. [13] [14] Калькуляторы формул являются частью этой тенденции.
Многие программные инструменты для обычного пользователя, такие как электронные таблицы, являются декларативными. Примерами таких инструментов являются калькуляторы формул.
Использование всей мощности компьютера
Программные калькуляторы, имитирующие ручные калькуляторы с мгновенным выполнением, не используют всю мощность компьютера: «Компьютер — гораздо более мощное устройство, чем ручной калькулятор, и поэтому нелогично и ограничивающе дублировать ручные калькуляторы на компьютере». (Haxial Software Pty Ltd) Калькуляторы формул используют большую часть мощности компьютера, поскольку, помимо вычисления значения формулы, они определяют порядок, в котором должны выполняться действия.
Инфиксная нотация
Инфиксная запись — это метод, аналогичный непосредственному выполнению с помощью AESH и/или AESP, но унарные операции вводятся в калькулятор в том же порядке, в котором они записаны на бумаге.
Калькуляторы, использующие инфиксную запись, как правило, включают в себя матричный дисплей для отображения вводимого выражения, часто сопровождаемый семисегментным дисплеем для результата выражения. Поскольку выражение не оценивается, пока оно не введено полностью, существует возможность редактирования введенного выражения в любой момент до оценки, а также воспроизведения введенных выражений и их ответов из памяти.
Большинство графических калькуляторов Casio и Texas Instruments используют этот метод. Sharp называет этот метод Direct Algebraic Logic ( DAL ) [15] , Casio называет этот метод Visually Perfect Algebraic Method ( VPAM ) [16] , а Texas Instruments называет его Equation Operating System ( EOS ) [8] .
Обратная польская запись
В обратной польской нотации [7], также известной как постфиксная нотация, все операции вводятся после операндов , над которыми выполняется операция. Обратная польская нотация не содержит скобок, что обычно приводит к меньшему количеству нажатий кнопок, необходимых для выполнения операции. Используя стек , можно вводить формулы без необходимости переставлять операнды.
Калькуляторы Hewlett-Packard являются хорошо известными примерами среди калькуляторов, использующих RPN. Ранние модели, такие как HP-35 , использовали RPN полностью без каких-либо альтернативных методов. Более поздние модели могут переключаться между RPN и другой нотацией, например, HP-12C Platinum , которая включает как RPN, так и немедленное выполнение (с операциями, выполняемыми строго в порядке ввода входных данных), HP 33s как с RPN, так и с гибридом немедленной/инфиксной алгебраической нотации (операции выполняются в соответствии со стандартным порядком операций, но функции с одним операндом вводятся с операндом, за которым следует оператор), и его преемник HP 35s как с RPN, так и со стандартной алгебраической инфиксной нотацией.
Примечание: Первый пример иллюстрирует один из немногих случаев, когда обратная польская нотация не использует наименьшее количество нажатий кнопок – при условии, что не переставлять операнды. Если бы это сделать, то потребовалось бы всего шесть нажатий клавиш.
БАЗОВАЯ нотация
Нотация BASIC — это частная реализация инфиксной нотации, в которой функции требуют, чтобы их параметры были заключены в скобки.
Этот метод использовался с 1980-х по 1990-е годы в программируемых калькуляторах BASIC и карманных компьютерах . Texas Instruments позже реализовала этот метод во многих своих графических калькуляторах, включая серии TI-83 и TI-84 Plus . Большинство систем компьютерной алгебры (CAS) также используют его в качестве метода ввода по умолчанию.
В нотации BASIC формула вводится так же, как и в BASIC , с помощью PRINTкоманды – PRINTсама команда необязательна. При нажатии «ENTER» или «=" будет отображен результат. Как и в стандартной инфиксной нотации, опечатки во введенной формуле можно исправить с помощью той же функции редактора, которая использовалась при программировании калькулятора.
Для второго примера приведены два варианта в зависимости от того, имеют ли программируемые карманные компьютеры BASIC специальные тригонометрические клавиши [18] или нет. [19]
Десять нот
Метод ввода с помощью десяти клавиш впервые стал популярен в счетных машинах бухгалтеров с бумажной лентой . Обычно он предполагает, что введенные числа суммируются, хотя поддерживаются и другие операции. Каждое введенное число сопровождается его знаком (+/−), и сохраняется текущая сумма. Предполагается, что последний операнд может быть неявно использован следующим, поэтому, просто введя еще один + (например), можно повторно использовать самый последний операнд. Режим ввода с помощью десяти клавиш доступен в печатных калькуляторах таких компаний, как Sharp , [20] и в программных калькуляторах, таких как TenKey Джуди [21], используемых бухгалтерскими фирмами. Также доступны онлайн-инструменты обучения и сертификации по десяти клавишам, [22] [23], и некоторые предприятия используют скорость набора текста с помощью десяти клавиш в качестве критерия при приеме на работу.
Математическое отображение
Современные системы компьютерной алгебры, а также многие научные и графические калькуляторы позволяют выполнять « красивую печать », то есть ввод уравнений таким образом, что дроби , иррациональные числа и интегралы и т. д. отображаются так, как они обычно пишутся. Такие калькуляторы, как правило, внешне похожи на те, которые используют инфиксную запись, но имеют полный матричный дисплей и шаблоны для ввода выражений, навигация по которым осуществляется с помощью клавиш со стрелками на калькуляторе. Шаблоны содержат пробелы для значений или выражений, которые необходимо ввести, а пустые значения обычно приводят к синтаксической ошибке, что делает навигацию по ним более сложной, чем стандартная инфиксная запись; стандартная инфиксная запись также часто является опцией на таких калькуляторах.
Casio раньше называла эту функцию Natural Display или Natural textbook display [24] [ 25], но теперь использует Natural-VPAM [26 ] . Sharp называет это WriteView [27] на своих научных калькуляторах и просто Equation Editor на своих графических калькуляторах [28] . HP называет это своей настройкой отображения Textbook [29] , которую можно использовать как в режиме RPN, так и в алгебраическом режиме, а также в стеке и в приложении Equation Writer [30] . Mathematica называет это Semantic-Faithful Typesetting [31] . Mathcad называет это стандартной математической нотацией [32 ] . Maple имеет Math Equation Editor [33] , но не имеет специального названия для этого метода ввода. Texas Instruments называет его MathPrint, [34] включив его в свои высококлассные калькуляторы, такие как серия TI-Nspire , а в 2011 году добавила эту функцию в свою серию TI-84 с обновлением ОС 2.55. [35]
Для второго примера даны два варианта, в зависимости от того, будут ли калькуляторы автоматически вставлять нужные скобки или нет. Машины, оснащенные буквенно-цифровым дисплеем, будут отображать SIN(30)×COS(30)до нажатия клавиши.↵ Enter
^ ab "Различия между алгебраической операционной системой (AOS) и операционной системой уравнений (EOS)". Texas Instruments . Получено 29.11.2022 .
^ Thimbleby, Harold W. (сентябрь 1998 г.). "Новый калькулятор и почему он необходим" (PDF) . Лондон, Великобритания: Computing Science, Middlesex University. Архивировано из оригинала (PDF) 2007-02-07 . Получено 2009-05-04 .
^ Холмс, Невилл (2003). «Истина и ясность в арифметике» (PDF) . Университет Тасмании. Архивировано (PDF) из оригинала 2006-10-07 . Получено 2023-09-21 .
^ "Профессор изобретает более простой калькулятор". www.physorg.com . United Press International . 2005-06-27. Архивировано из оригинала 2023-01-15 . Получено 2023-09-20 .
^ Фурман, Рой Э. (июль 2006 г.). «Декларативное программирование – стратегии решения проблем программного обеспечения». Архивировано из оригинала 2012-07-23 . Получено 2009-05-04 .
^ Matsushita, Tatsuru (октябрь 1998 г.). «Выразительная сила декларативных языков программирования» (диссертация на соискание степени доктора философии). Кафедра компьютерных наук, Йоркский университет. Архивировано из оригинала 21.09.2023 . Получено 21.09.2023 .
^ ab Nelson, Richard J. (апрель 2012 г.). "HP RPN Evolves" (PDF) . HP Solve (27). Hewlett-Packard Development Company, LP : 42–45. Архивировано (PDF) из оригинала 2022-10-20 . Получено 2022-10-20 .[1] (4 из 56 страниц)
^ На рисунке Casio FX-880P показаны клавиши sin, cos и tan во втором ряду справа.
^ На рисунке Sharp PC-1245 тригонометрические клавиши отсутствуют.
^ Natural Visually Perfect Algebraic Mode (VPAM) — Научный калькулятор. Архивировано 27 апреля 2009 г. на Wayback Machine .
^ WriteView.
^ Редактор уравнений Sharp Graphing.
^ "Документ поддержки HP - Центр поддержки HP". h20564.www2.hp.com . Архивировано из оригинала 2016-08-26 . Получено 2016-08-23 .
^ http://h20331.www2.hp.com/Hpsub/downloads/50gUsing_the_EquationWriter_Part2.pdf. Архивировано 2011-12-18 на Wayback Machine
^ Семантически-точный набор текста.
^ Mathcad Архивировано 20 сентября 2008 г. на Wayback Machine .
^ «Редактор математических уравнений — Возможности Maple — Maplesoft». www.maplesoft.com .
^ "Продукция TI | Графические калькуляторы | Научные калькуляторы". education.ti.com .
^ "Texas Instruments выпускает новую ОС для TI-84, 2.55 MP". Tech Powered Math . 2011-01-14 . Получено 2018-05-12 .
Дальнейшее чтение
Kasprzyk, Dennis Michael; Drury, Colin G.; Bialas, Wayne F. (1979) [1978-09-25]. "Поведение человека и производительность при использовании калькулятора с алгебраической и обратной польской нотацией". Эргономика . 22 (9). Кафедра промышленной инженерии, Государственный университет Нью-Йорка в Буффало , Амхерст, Нью-Йорк, США: Taylor & Francis : 1011–1019. doi : 10.1080/00140137908924675. eISSN 1366-5847. ISSN 0014-0139. S2CID 62692402.(9 страниц)
"Advanced Calculator Logic HP RPN/Algebraic: A Comparative Analysis" (PDF) . Корваллис, Орегон, США: Hewlett-Packard Corporation . 1979. 5953-1930. Архивировано (PDF) из оригинала 2022-12-26 . Получено 2022-12-26 .(13 страниц)
Agate, Seb J.; Drury, Colin G. (март 1980 г.). «Электронные калькуляторы: какая нотация лучше?» (PDF) . Прикладная эргономика . 11 (1). Кафедра промышленной инженерии, Университет в Буффало, Государственный университет Нью-Йорка, США: IPC Business Press : 2–6. doi :10.1016/0003-6870(80)90114-3. eISSN 1872-9126. ISSN 0003-6870. PMID 15676368. 0003-6870/80/01 0002-05. Архивировано (PDF) из оригинала 23.09.2023 . Получено 22.09.2018 .(5 страниц)
Suydam, Marilyn N. (декабрь 1980 г.). Calculators: A Categorized Compilation of References. Приложение 1 (PDF) . Колумбус, Огайо, США: Calculator Information Center, Ohio State University . ED199087. SE034434. Архивировано (PDF) из оригинала 2021-09-19 . Получено 2022-10-16 .(64 страницы)
Kreifeldt, John G.; McCarthy, Mary E. (1981-10-15) [1981-06-16/18]. Написано на кафедре инженерного проектирования, Университет Тафтса, Медфорд, Массачусетс, США. Прерывание как тест интерфейса пользователь-компьютер (PDF) . Труды семнадцатой ежегодной конференции по ручному управлению. Калифорнийский университет, Лос-Анджелес, Калифорния, США: Лаборатория реактивного движения / Управление военно-морских исследований / NASA . стр. 655–667. 02155, N82-13721, 82N13721, 19820005848, JPL 81-95. Архивировано (PDF) из оригинала 2022-01-30 . Получено 2018-09-22 .Труды семнадцатой ежегодной конференции по ручному управлению: Калифорнийский университет, Лос-Анджелес, 16-18 июня 1981 г. (13 из 702 страниц)
Крейфельдт, Джон Г. (октябрь 1981 г.). «Работа ручного калькулятора в условиях прерывания работы». Труды Ежегодного собрания Общества по изучению человеческого фактора . 25 (1). Кафедра инженерного проектирования, Университет Тафтса, Медфорд, Массачусетс, США: 329–332. doi :10.1177/107118138102500187. S2CID 106904297.(4 страницы)
Янг, Ричард М. (июль 1981 г.). «Машина внутри машины: пользовательские модели карманных калькуляторов». Международный журнал исследований человека и машины . 15 (1): 51–85. doi :10.1016/S0020-7373(81)80023-5. ISSN 0020-7373.(35 страниц)
Young, Richard M. (1984). «Искусственный интеллект: концептуальные модели плохо определенных систем». Написано в Университете Массачусетса, Амхерст, Массачусетс, США; MRC Applied Psychology Unit, Кембридж, Великобритания. В Selfridge, Oliver Gordon ; Rissland, Edwina L. ; Arbib, Michael Anthony (ред.). Адаптивное управление плохо определенными системами. Серия конференций НАТО (NATOCS, том 16); II Systems Science (SYSC) (1-е иллюстрированное издание). Нью-Йорк и Лондон: Plenum Press , Plenum Publishing Corporation / Springer. стр. 165–176. doi :10.1007/978-1-4684-8941-5. ISBN 978-1-4684-8943-9. LCCN 83-17699 . Получено 2022-12-26 .(12 страниц)
Хоффман, Эррол; Ма, Патрик; Си, Джейсон; Йонг, Чи Ки; Брэнд, Джейсон; Поултон, Мэтью (1994). «Логика калькулятора: когда и почему RPN превосходит алгебраическую?». Прикладная эргономика . 25 (5). Elsevier Science Ltd. : 327–333. doi :10.1016/0003-6870(94)90048-5. eISSN 1872-9126. ISSN 0003-6870.(7 страниц)
Возняк, Стивен Гэри "Woz" , ред. (2012) [2000-02-13]. "На нашем курсе AP C++ мы пытаемся использовать виртуальные стеки для разработки транслятора инфиксного в постфиксный калькулятор. Чтобы изучить, чем именно отличаются инфиксная и постфиксная нотации, мы использовали один из очень старых калькуляторов HP. Мне было интересно, когда вы работали в HP, вы помогали разрабатывать какие-нибудь постфиксные калькуляторы? Вы предпочитаете инфиксную или постфиксную нотацию?". Letters-General Questions Answered. woz.org . Архивировано из оригинала 2012-11-04 . Получено 2023-09-23 . […] В нашем отделе маркетинга была карточка с чудовищной формулой, чтобы продемонстрировать, насколько мощными были наши калькуляторы и на что способны постфиксные вычисления. Они бросили вызов людям, чтобы они решили ее на логарифмической линейке обычным способом. Ну, мы все могли решить это на наших калькуляторах HP , но требовалось несколько попыток, чтобы шаги были достаточно точными […] Наконец, Texas Instruments представила инфиксный «алгебраический ввод» научного калькулятора. […] Мы все […] смеялись над арифметическим вводом, считая его слишком слабым для инженеров. […] наша большая задача по формулам […], уверенные, что никто никогда не сможет сделать это с калькулятором TI. Была поставлена задача для кого-то попробовать. После короткого молчания я сказал, что попробую. […] Мои коллеги не могли в это поверить. Я сказал им, что вы просто копируете формулу слева направо, но никто из них не мог разглядеть ее сквозь туман постфиксов. В конце концов, это были эксперты по калькуляторам мира. Они хорошо привыкли думать наперед и анализировать выражение, чтобы придумать порядок шагов для выполнения на постфиксном калькуляторе HP, и им нужно было запомнить, какие подвыражения были в каком порядке в стеке калькулятора. Никто из них не мог сделать то, что сделал я, забудьте, что они должны быть умными. […]
Редин, Джеймс (2005-02-12) [1997-10-05]. "RPN или DAL? Краткий анализ обратной польской нотации против прямой алгебраической логики". Архивировано из оригинала 2017-06-24 . Получено 2015-09-12 .
Wu, Hung-Hsi [в Wikidata] (13.09.2007) [01.06.2004]. ""Порядок операций" и другие странности в школьной математике" (PDF) . Беркли, Калифорния, США: Кафедра математики, Калифорнийский университет. Архивировано (PDF) из оригинала 18.09.2023 . Получено 03.07.2007 .(11 страниц)
Вандербик, Грег (июль 2007 г.). Order of Operations and RPN (Expository paper). Master of Arts in Teaching (MAT) Exam Expository Papers. Линкольн, Небраска, США: Университет Небраски . Статья 46. Архивировано из оригинала 14.06.2020 . Получено 14.06.2020 .(1+2+17 страниц)
Фоте, Майкл; Уилке, Томас, ред. (2015) [14 ноября 2014 г.]. Написано в Йене, Германия. Келлер, Stack und autotisches Gedächtnis – eine Struktur mit Potenzial [ Подвал, стек и автоматическая память - структура с потенциалом ] (PDF) (Tagungsband zum Kolloquium, 14 ноября 2014 г., Йена). Серия GI: Конспекты лекций по информатике (LNI) - Тематика (на немецком языке). Том. Т-7. Бонн, Германия: Gesellschaft für Informatik (GI) / Köllen Druck + Verlag GmbH. ISBN 978-3-88579-426-4. ISSN 1614-3213. Архивировано (PDF) из оригинала 2020-04-12 . Получено 2020-04-12 .[2] (77 страниц)