| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++] Использование стека |
| Автор: SVlexs510 12.5.2007, 20:53 |
| Задача: Дано арифметическое выражение с операциями сложения и вычитания в скобочной записи. Используя стек, вычислить его значение. Если оно неправильное, выдать сообщение. Комментарий: Не могу разобраться со стеком. Дали только эту теорию: http://www.citforum.ru/programming/c/h21.shtml#2 |
| Автор: Kuvaldis 12.5.2007, 21:07 |
| http://algolist.manual.ru/syntax/revpn.php |
| Автор: SVlexs510 13.5.2007, 07:47 | ||||
| Спасибо за ссылку, стало понятней. Попытался проверить пример. Компилятор выдал ошибку в строчке:
Подправил на:
Программа запускается, но не понял, как вводить данные. По моей задачи, как я понял, должно быть так: (5+6)-(7+9)= Или я не правильно ввожу данные? Добавлено через 2 минуты и 45 секунд Мой cpp файл |
| Автор: dizzy1984 14.5.2007, 13:50 | ||||
Ваш исходник у меня не скомпилировался на строке
Ее нужно поменять на
,тогда программа запустится, но смысл ее полезного действия был не так вами понят. Если я не ошибаюсь, то она всего лишь записывает введенное выражение в таком виде (называемом обратная польская запись), что его можно вычислить путем однократного прохода. В качестве элементов в строке используются символы, а не цифры, как вы предположили. Скажем если ввести a+b, будет выведено ab+. Т.е будет получена строка, разбор которой вам и предстоит написать. |
| Автор: SVlexs510 17.5.2007, 21:32 |
| Спасибо за помощь! Разобрался |