|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.10.2012, 23:06 | #1 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 23
|
перевод выражения из инфиксной записи в постфиксную
Привет, никак не получается наладить алгоритм перевода из инфискной записи в постфиксную.
Делаю по алгоритму: 1. раскидываем знаки и операнды в разные стеки. если в выражении встречаем ')' то отыскиваем в стеке соответствущую левую скобку и все что выше '(' выталкиваем в стек с операндами. 2. Дальше проходим по выражению и если мы встречаем операнд, который по приоритету меньше чем верхний элемент стека или не является '(' то выталкиваем элементы из стека со знаками в стек с операндами, пока не встретим '(' или дно стека. Не очень могу понять как реализовать часть 2. и код: PHP код:
|
26.10.2012, 23:10 | #2 |
Форумчанин
Регистрация: 24.04.2012
Сообщений: 300
|
Ужс, адская смесь .NET и c++.
Помог? Оставляем отзыв =)
|
26.10.2012, 23:13 | #3 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 23
|
Пишу в VS, формы
|
26.10.2012, 23:21 | #4 |
Пользователь
Регистрация: 31.10.2011
Сообщений: 23
|
В принципе проблема самая большая с составлением алгоритма, как что за чем писать. После выполнения пункта 2 небольшая проблемка
|
26.10.2012, 23:32 | #5 | |
Старожил
Регистрация: 25.10.2011
Сообщений: 3,178
|
Цитата:
Третий совет: обратить внимание, что всё содержимое скобок превращается в один операнд выходной строки. То есть, пусть у нас уже есть код, который превращает в постфиксную запись выражение без скобок. Тогда его можно модифицировать следующим образом: как только ему попалась закрывающая скобка, он завершается, возвращая созданную к этому времени строку; как только вместо операнда ему попалась открывающая скобка, он вызывает сам себя для следующего после скобки символа, и возвращённое этим вызовом (это получится содержимое пары скобок в постфиксной записи) использует в качестве операнда. |
|
Опции темы | Поиск в этой теме |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Преобразование арифметического выражения из инфиксной в постфиксную форму записи | Nelson1992 | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 29.05.2021 18:04 |
Перевод выражения из инфиксной в постфиксную форму | branbranzor | Помощь студентам | 1 | 18.06.2012 00:04 |
Перевод из инфиксной записи в обратную польскую | Anny_Apple | Паскаль, Turbo Pascal, PascalABC.NET | 1 | 10.04.2011 20:49 |
программа для перевода из инфиксной формы записи в постфиксную | Diana888 | Помощь студентам | 0 | 01.10.2009 23:15 |
программа для перевода из инфиксной формы записи в постфиксную | Diana888 | Общие вопросы C/C++ | 0 | 01.10.2009 23:06 |