Обработка ввода калькулятора через строки VS.арифметика - PullRequest
1 голос
/ 09 мая 2019

Я создаю приложение с графическим интерфейсом, которое имеет ввод в виде клавиатуры калькулятора (очень похоже на стандартное приложение калькулятора iOS или Android).Общий входной поток, с которым мы все знакомы, заключается в добавлении каждой новой цифры в конец отображаемого в данный момент числа.

С точки зрения как безопасности, так и производительности от ошибок лучше объединить новую цифру в конец существующей строки и проанализировать ее при выполнении новой операции - или представить число какfloat или double с начала?

В настоящее время все учебники, которые я вижу по этой теме, предлагают строковый подход.Интуитивно понятно, что калькуляторы - это числа, а не строки, поэтому я не решаюсь использовать этот подход прямо сейчас;тем не менее, я не могу найти какой-либо веской причины против этого, так как это гораздо проще реализовать, чем отслеживать значимое и экспоненту числа.

При этом, я уверен, что фактическоекалькуляторы не используют строки.Если бы кто-нибудь мог описать мне, как они обрабатывают свои входные данные, я был бы очень благодарен.

Кроме того, я обеспокоен тем, что использование чисел с плавающей запятой для ввода может повлиять на точность - но я и здесь не уверен.Был бы рад услышать как можно больше мнений.Я пишу приложение на Swift, но тот же вопрос может относиться к аналогичному приложению, например, на JavaScript или Kotlin.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...