|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Dmitriy Nesmachny 2:5020/2065.609 21 Oct 2001 11:13:12 To : Evgeniy Jirnov Subject : Паpсинг yнаpных опеpатоpов -------------------------------------------------------------------------------- Четверг 18 Окт 2001 10:31:36, Evgeniy Jirnov -> Dmitriy Nesmachny: EJ> 2All: В связи с этим вопрос: как проверить польскую запись EJ> на корректность? В EJ> основном я справился, но как быть с таким: 2 2 / 2 * + ? EJ> "2+(/2*2)" Hу разбираешь когда: 2 в стек, 2 в стек, два значения из стека, поделить и результат на стек: 2/2=1, на стеке 1, дальше идем: 2 на стек, два значения из стека перемножить и результат на стек: 2*1=2, на стеке одно число: 2, дальше на стеке "+", пытаемся снять два числа и облом - значит запись некорректна. Аналогично и если в конце вычислений на стеке останется кол-во чисел отличное от единицы. С уважением, Dmitriy. --- Lara Croft v.4.50 * Origin: #21004011014001FF2AEDB0C9 ;-) (2:5020/2065.609) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/535604750d58.html, оценка из 5, голосов 10
|