Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Как можно реализовать в си следующие алгоритмы? (закодить)

Никита Федореев Ученик (96), на голосовании 6 лет назад
Перевод из инфикса в постфикс:
Если встречаем число - отправляем его в первый стек;
Если встречаем "(" - отправляем её во второй стек;
Если встречаем знак, а во втором стеке последний элемент "(" - отправляем его во второй стек;
Если встречаем ")", то последний элемент во втором стеке перекладываем в первый стек, а остальные элементы удаляем;
Если встречаем "l", то последний элемент во втором стеке перекладываем в первый стек;
В первом стеке получаем выражение в постфиксной нотации;

Вычисление постфикса:
Если встречаем число - помещаем его в стек;
Если встречаем знак - выполняем соответствующее действие с двумя последними элеменами, находящимися в стеке;
В стеке получаем результат вычисления;

Более полная версия есть здесь https://master.virmandy.net/perevod-iz-infiksnoy-notatsii-v-postfiksnuyu-obratnaya-polskaya-zapis/

ну и кто-нибудь знает хорошие сайты, где объясняется как работать со стеком? (с самого начала)
Голосование за лучший ответ
Алекс Куха Высший разум (446273) 6 лет назад
По вашей же ссылке есть код для подражания
Мисс Просветленный (43940) 6 лет назад
Так Вы все знаете сами...
Весна Мастер (1314) 6 лет назад
Как можно реализовать в си следующие алгоритмы? (закодить)
Никита Федореев Ученик (83), Вопрос открыт 1 день назад
Перевод из инфикса в постфикс:
Если встречаем число - отправляем его в первый стек;
Если встречаем "(" - отправляем её во второй стек;
Если встречаем знак, а во втором стеке последний элемент "(" - отправляем его во второй стек;
Если встречаем ")", то последний элемент во втором стеке перекладываем в первый стек, а остальные элементы удаляем;
Если встречаем "l", то последний элемент во втором стеке перекладываем в первый стек;
В первом стеке получаем выражение в постфиксной нотации;

Вычисление постфикса:
Если встречаем число - помещаем его в стек;
Если встречаем знак - выполняем соответствующее действие с двумя последними элеменами, находящимися в стеке;
В стеке получаем результат вычисления;

Более полная версия есть здесь https://master.virmandy.net/perevod-iz-infiksnoy-notatsii-v-postfiksnuyu-obratnaya-polskaya-zapis/

ну и кто-нибудь знает хорошие сайты, где объясняется как работать со стеком? (с самого начала)
1 Нравится Подписаться Ответить
3 ОТВЕТА
Алекс Куха 1 день назад
Высший разум (249461)
По вашей же ссылке есть код для подражания
Нравится Комментировать Пожаловаться
3 ОТВЕТА
Revelation - мир в котором нет границ!

Начни путешествие по миру ArcheAge уже сейчас!

Стань легендарным героем в Dragon Knight!

PUBG - мировой бестселлер по специальной цене
'*·~-. ,-~·*' 1 день назад
Мыслитель (9557)
Так Вы все знаете сами...
Нравится Комментировать Пожаловаться
Оч Хороший Комментатор 4 часа назад
Ученик (172)
Там все же написано..
Нравится Комментировать Пожаловаться
Людмила Седова Профи (673) 6 лет назад
https://ru.wikipedia.org/wiki/Алгоритм_сортировочной_станции

https://ru.wikipedia.org/wiki/Конкатенативный_язык_программирования

Самый лучший способ понять стековое программирование - попробовать так программировать. Например, порешать задачи на сайте CodeAbbey.com на языке Factor. Еще лучше создать свой стековый язык программирования, это очень просто. Такой язык может быть встроен в какую-то программу для ее расширения. Яркий пример: Bitcoin
Похожие вопросы