![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 02.06.2013
Сообщений: 17
|
![]()
Помогите пожалуйста написать программу, вычисляющую арифметическое выражение, представленное в постфиксной форме записи.
В программе нужно использовать стек. |
![]() |
![]() |
![]() |
#2 |
C/C++, Java
Участник клуба
Регистрация: 28.03.2012
Сообщений: 1,680
|
![]()
Конкретнее + наработки, если есть...
![]()
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости" Сложность - враг простоты и удобства! |
![]() |
![]() |
![]() |
#3 |
Пользователь
Регистрация: 02.06.2013
Сообщений: 17
|
![]()
Саму программу рекомендуется выполнить в виде программного комплекса, состоящего из двух частей В первой части программы нужно выполнить решение задачи, а действия, связанные с реализацией динамической структуры стек, следует вынести во вторую часть программы, оформленную в виде макромодуля Unit.
в постфиксной форме записи пример 4*(6-3)+(8-6)/2 будет записан как 4 6 3 - * 8 6 - 2 / + запись поступает в стек поэлементно и каждое поступившее число просто заталкивается в стек, а каждая операция снимает со стека два числа,выполняет с ними сое действие и кладет в стек результат. Всё можно записать таблицей: входной символ -- содержимое стека 4 -- 4 6 -- 4 6 3 -- 4 6 3 - -- 4 3 * -- 12 8 -- 12 8 6 -- 12 8 6 - -- 12 2 2 -- 12 2 2 / -- 12 1 + -- 13 Других наработок пока нет, только начала составление алгоритма ![]() |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 02.06.2013
Сообщений: 17
|
![]()
Вроде задачка не сложная, просто со стеками раньше никогда не работала
![]() Последний раз редактировалось lenka91; 14.09.2013 в 15:44. |
![]() |
![]() |
![]() |
#5 |
Регистрация: 15.09.2013
Сообщений: 7
|
![]()
В книге Кернигана и Ритчи "Язык Си" похожая задача разбирается. Глава 4.3.
|
![]() |
![]() |
![]() |
#6 | ||
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]() Цитата:
Собственно, какого рода помощь вам нужна? Цитата:
|
||
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 02.06.2013
Сообщений: 17
|
![]()
всем спасибо, разобралась
![]() |
![]() |
![]() |
![]() |
#8 | |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#9 |
Пользователь
Регистрация: 02.06.2013
Сообщений: 17
|
![]()
если кому поможет, вот рабочий код
![]() Код:
|
![]() |
![]() |
![]() |
#10 |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]()
мм, 3 месяца почти на этот код ушло? )
|
![]() |
![]() |
![]() |
Опции темы | Поиск в этой теме |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Непонятки в форме записи | Shad0wF1rst | Общие вопросы C/C++ | 3 | 11.09.2013 10:37 |
Вопрос про вывод переменной в префиксной и постфиксной форме. C++ | fly0f | Помощь студентам | 1 | 04.04.2012 20:37 |
Turbo Pascal - вычислить значение выражения в постфиксной форме | doktor_zlo | Помощь студентам | 4 | 11.11.2011 14:28 |
Удалить записи в форме | Swatch | Microsoft Office Access | 2 | 22.02.2010 16:57 |
дерево выражения, записанного в постфиксной форме Delphi | Римма1990 | Помощь студентам | 0 | 20.04.2009 20:49 |