Práctica: Evaluar una Expresión en Postfijo
Escriba un programa que lea una línea conteniendo una expresión en postfijo e imprima su valor.
La entrada se lee desde línea de comandos.
[~/rubytesting/postfix]$ ruby postfix.rb '2 3 + 4 *'
20
Para simplificar, asumiremos que los terminales en la expresión están separados por blancos.
Por ejemplo, ante la entrada:
4 5 -2 + *
El programa deberá imprimir 12
(esto es, se interpreta como 4*(5+-2)
).
Si la entrada es ilegal deberá producirse una excepción:
~/src/ruby/rubytesting$ ruby postfix.rb '4 3 + x2 *'
postfix.rb:12: Error. found x2. Expected number or operator (SyntaxError)
from postfix.rb:3:in `each'
from postfix.rb:3
Subsecciones
Casiano Rodriguez León
2015-01-07