|
Форумчанин Паскаля
|
|
Идея калькулятора, подститывающего выражения10.03.2014, 17:50. Показов 991. Ответов 13
Метки нет (Все метки)
Ограмная просьба подкиньте идею как можно сделать свой калькулятор который бы считал выражения примера 2+2*2 или 567-564*3/567f yt ghjcnj 2+2 bkb 456-65. Подскажите как лутше!!! Можно ли это качественно сделать строками??? Нужна только идея хотя бы!
Добавлено через 23 часа 58 минут
0
|
|
| 10.03.2014, 17:50 | |
|
Ответы с готовыми решениями:
13
Парсер математического выражения для калькулятора Как найти значение выражения без калькулятора. Идея |
|
3030 / 1916 / 1649
Регистрация: 30.04.2011
Сообщений: 3,060
|
|
| 10.03.2014, 20:24 | |
|
1
|
|
|
Форумчанин Паскаля
|
|
| 10.03.2014, 22:58 [ТС] | |
|
Огромное спасибо за идею но дело в том что меня смущает то что в ОПЗ числа читаються через пробелы а в калькуляторах я не видел пробелов
(
0
|
|
|
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
||
| 10.03.2014, 23:15 | ||
|
Добавлено через 1 минуту (Если я правильно понял, вопрос был про наличие операции занесения числа в стек.)
1
|
||
|
Форумчанин Паскаля
|
|
| 11.03.2014, 22:26 [ТС] | |
|
Нет дело в том что в этой статье написано что все числа заносятся в стек и они отделены пробелами
(((. Или я не правильно понял?
0
|
|
|
Модератор
10445 / 5737 / 3406
Регистрация: 17.08.2012
Сообщений: 17,451
|
|
| 12.03.2014, 01:43 | |
|
golandy, числа сольются.
0
|
|
|
Модератор
10445 / 5737 / 3406
Регистрация: 17.08.2012
Сообщений: 17,451
|
|
| 12.03.2014, 13:03 | |
|
golandy, нет, надо просто строку отпарсить и разобрать по косточкам, и все дела. И работать не со строкой, а с массивом/массивами из операндов и операций.
0
|
|
|
|
|
| 12.03.2014, 13:10 | |
|
Cyborg Drone, спорить не буду т.к. сколько людей столько и решений. Я просто предложил вариант если нужно вводить строку с пробелами. Можно и ее просто попарсить. А по этой теме много примеров в сети. Только определиться с методом польской записи (постфиксная, префиксная).
0
|
|
|
Модератор
10445 / 5737 / 3406
Регистрация: 17.08.2012
Сообщений: 17,451
|
|
| 12.03.2014, 13:28 | |
|
На месте ТС я бы слизал интерфейс с калькуляторов Электроника МК-54" или Электроника МК-61", в них используется ОПЗ. Только стек бы сделал побольше, и индицировал бы все элементы стека, операций поменьше и никакой записи программ, последние два пункта для простоты. Однако, на чистом паскале такое сделать тяжело. code-n'-help, в сети можно найти эмуляторы вышеназванных калькуляторов. И вообще, так как ОПЗ, кнопки [=] в таком калькуляторе нет по определению.
0
|
|
|
2838 / 1647 / 254
Регистрация: 03.12.2007
Сообщений: 4,222
|
||||||
| 12.03.2014, 14:43 | ||||||
Сообщение было отмечено Kodzaev как решение
Решение
Если интересно, есть один такой калькулятор. Вроде работает, хотя, возможно, ошибки есть. Только код страшненький - это я давно писал, когда классе в 10-м учился.
Коды ошибок
0 Успешно завершено
1 Слишком много операций и (или) скобок 2 Превышена вложенность скобок 3 Закрывающих скобок больше, чем открывающих 4 Неизвестная функция 5 Неверное количество аргументов фугкции [ver5+] 6 ОЧЕНЬ длинное число 7 Слишком большое число 8 Открывающих скобок больше, чем закрывающих 9 Ошибка в выражении 10 Слишком сложное выражение 11 Ошибка в выражении 12 Ошибка в выражении 13 Ошибка в выражении [ver5+] 14 Ошибка в выражении 0 Успешно завершено 1 Верхнее переполнение стека 0 при чтении 2 Верхнее переполнение стека br 3 Нижнее переполнение стека br 4 Неизвестная функция 5 par<>parcount[f] 6 Переполнение буфера ts 7 Ошибка преобразования числа 8 Стек br не пуст после чтения 9 Странный символ в выражении 10 Верхнее переполнение стека 1 или 2 11 Нижнее переполнение стека 0 при выполнении операции 12 n<>1 после вычисления выражения 13 Что-то с точками с запятой 14 Значение lst не соответствует типу элемента
1
|
||||||
|
Форумчанин Паскаля
|
||||||
| 13.03.2014, 09:31 [ТС] | ||||||
а вот мой код но только он читает все ариф действия 4 видов +-*/
0
|
||||||
| 14.03.2014, 07:10 | ||
И сразу r := 0.. и потом r := r*10+Ord(s[i]) - Ord('0'); не проще?
0
|
||
| 14.03.2014, 07:10 | |
|
Помогаю со студенческими работами здесь
14
Идея Идея Идея ИДЕЯ!
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Как я обхитрил таблицу Word
Alexander-7 21.03.2026
Когда мигает курсор у внешнего края таблицы, и нам надо перейти на новую строку, а при нажатии Enter создается новый ряд таблицы с ячейками, то мы вместо нервных нажатий Энтеров мы пишем любые буквы. . .
|
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс.
Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
|
Программный отбор элементов справочника 1С
Maks 21.03.2026
Установка программного отбора элементов справочника "Сотрудники" из модуля формы документа.
В качестве фильтра для отбора служит предопределенное значение перечислений.
Процедура. . .
|
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
|
|
Оттенки серого
Argus19 18.03.2026
Оттенки серого
Нашёл в интернете 3 прекрасных модуля:
Модуль класса открытия диалога открытия/ сохранения файла на Win32 API;
Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|