Форум программистов, компьютерный форум CyberForum.ru

Обратная польская запись - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 11, средняя оценка - 4.91
fenix117
8 / 8 / 1
Регистрация: 16.03.2011
Сообщений: 249
30.01.2014, 19:44     Обратная польская запись #1
Здравствуйте, изучаю обратную польскую запись, столкнулся с такой проблемой:

Перерыл множество алгоритмов перевода из обычной записи в постфиксную, но ни одна не понимает знак "-" перед операндом. То есть если "x-y" = "xy-", то "-y+x" переводить не хочет. Мысль как это реализовать: перед тем как парсить выражение, везде где перед знаком "-" есть операнд или закрывающая скобка ставить знак "+", а знак "-" считать как часть операнда, следующего после знака. То есть "x-y" = "x+-y" = "x,-y,+"; "-y+x" = "-y,x,+". Прокатит? Какие будут мысли, варианты?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
30.01.2014, 19:44     Обратная польская запись
Посмотрите здесь:

обратная польская запись. C++
C++ Обратная польская запись (ОПЗ) на С++
Обратная польская запись C++
Обратная польская запись C++
Обратная польская запись C++
C++ Калькулятор (обратная польская запись)
C++ Обратная Польская Запись
Калькулятор: обратная польская запись C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
0x10
2425 / 1597 / 232
Регистрация: 24.11.2012
Сообщений: 3,919
30.01.2014, 20:07     Обратная польская запись #2
Все решено до нас: http://e-maxx.ru/algo/expressions_parsing
Yandex
Объявления
30.01.2014, 20:07     Обратная польская запись
Ответ Создать тему
Опции темы

Текущее время: 03:03. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru