0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 5
|
|
1 | |
Написать строковый калькулятор14.04.2013, 00:51. Показов 14856. Ответов 6
Метки нет (Все метки)
здравствуйте. просьба, хотя бы идейно, а лучше с примером подсказать, как научить программу решать пример.
суть: 5 + 5 - 28 * 3. нажимаю enter, выдаёт ответ. запускаю заново, пишу: 89 - 64 + 3, нажимаю enter, выдаётся ответ. а в идеале и такое: 2^3 - 5^(2/3). подскажите, пожалуйста.
0
|
14.04.2013, 00:51 | |
Ответы с готовыми решениями:
6
Строковый калькулятор Строковый калькулятор Калькулятор строковый с защитой от дурака Строковый калькулятор, добавление скобок |
16 / 16 / 3
Регистрация: 06.02.2013
Сообщений: 57
|
||||||
14.04.2013, 01:11 | 2 | |||||
Через стек.
Записать исходный пример в массив. Перевести в постфиксную форму, и оценить постфиксное фыражение. Вот пример но он только для целых чисел и без проверки на корректность ввода.
2
|
29 / 29 / 13
Регистрация: 15.11.2012
Сообщений: 93
|
||||||
14.04.2013, 01:26 | 3 | |||||
Сообщение было отмечено Памирыч как решение
Решение
Вот готовый пример калькулятора, не используя стек, а просто обрабатывая строку.
Сложение, вычитание, умножение, деление, возведение в степень, скобочки, тригонометрические функции (sin, cos, tang). При желании можно добавить еще что-нибудь.
3
|
1 / 1 / 0
Регистрация: 10.04.2013
Сообщений: 17
|
|
14.04.2013, 02:33 | 4 |
Вместо тысячи слов...
http://ru.wikipedia.org/wiki/%... 1%81%D1%8C
0
|
134 / 106 / 10
Регистрация: 22.05.2010
Сообщений: 533
|
||||||
14.04.2013, 03:11 | 5 | |||||
Rifle и _Simpson правильно говорят.
Разве только я бы делал через дерево или очередь. Почему? Потому что так удобнее держать единственное результирующее значение, а юзая рекурсию вообще получаем едва ли не бесплатный калькулятор. Правда стек и реализует рекурсию более эффектино, придётся немного подумать. Да и очередь почти одно и тоже даст. А так, я вижу примерно такое:
Алсо, здесь потребуется много чего реализовать. То как доделать класс std::string, сделать класс StringList и так далее. Да и использовались плюшки из C++11. Добавлено через 37 минут Update: Это рекурсия, но по сути она соответствует дереву. Работает через стек, конечно. Производительность пониже, но писать намного проще. Добавлено через 1 минуту Не, это не зергут. На wolframalpha.com так не издеваются, например.
0
|
0 / 0 / 0
Регистрация: 28.10.2014
Сообщений: 15
|
|
14.04.2013, 07:55 | 6 |
спасиб как раз то что на прогу надо ьыло
0
|
0 / 0 / 0
Регистрация: 14.04.2013
Сообщений: 5
|
|
14.04.2013, 12:17 [ТС] | 7 |
всем спасибо, сижу разбираюсь)
0
|
14.04.2013, 12:17 | |
14.04.2013, 12:17 | |
Помогаю со студенческими работами здесь
7
Строковый калькулятор в два стека Калькулятор выражений(строковый) через бинарное дерево Написать функцию (строковый парсер), воспроизводящую работу простейшего калькулятора Тема: Циклы, строковый тип. Написать программу по данной задаче Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |