Польський інверсний запис: відмінності між версіями

[неперевірена версія][неперевірена версія]
Вилучено вміст Додано вміст
Luver (обговорення | внесок)
вікіфікація
Luver (обговорення | внесок)
Рядок 348:
Маємо рядок «3 +4 * 2 / (1-5) ^ 2». Потрібно перевести її до польського запису
 
Читаємо "«3"»
Додаємо "«3"» до виходу
Вихід: 3
 
Читаємо "«+"»
Вставити "«+"» в стек
Вихід: 3
Стек: +
 
Читаємо "«4"»
Додаємо "«4"» до виходу
Вихід: 3 4
Стек: +
 
Читаємо "«*"»
Вставляємо "«*"» в стеку
Вихід: 3 4
Стек: + *
 
Читаємо "«2"»
Додаємо "«2"» до виходу
Вихід: 3 4 2
Стек: + *
 
Читаємо "«/"»
Видаляємо "«*"» зі стеку і додаємо до виходу, вставляємо "«/"» в стек
Вихід: 3 4 2 *
Стек: + /
 
Читаємо "«("»
Поміщаємо "«("» в стек
Вихід: 3 4 2 *
Стек: + / (
 
Читаємо "«1"»
Додаємо "«1"», до виходу
Вихід: 3 4 2 * 1
Стек: + / (
 
Читаємо "«-"»
Вставляємо "«-"» в стек
Вихід: 3 4 2 * 1
Стек: + / (-
 
Читаємо "«5"»
Додаємо "«5"» до виходу
Вихід: 3 4 2 * 1 5
Стек: + / (-
 
Читаємо "«)"»
Видаляємо "«-"» зі стека і додаємо до виходу, видаляємо "«("» зі стеку
Вихід: 3 4 2 * 1 5 -
Стек: + /
 
Читаємо "«^"»
Додаємо "«^"» в стек
Вихід: 3 4 2 * 1 5 -
Стек: + / ^
 
Читаємо "«2"»
Додаємо "«2"» до виходу
Вихід: 3 4 2 * 1 5 - 2
Стек: + / ^