Você deve avaliar uma string escrita em notação polonesa reversa e produzir o resultado.
O programa deve aceitar uma entrada e retornar a saída. Para linguagens de programação que não possuem funções para receber entrada / saída, você pode assumir funções como readLine / print.
Você não tem permissão para usar nenhum tipo de "avaliação" no programa.
Números e operadores são separados por um ou mais espaços.
Você deve suportar pelo menos os operadores +, -, * e /.
Você precisa adicionar suporte a números negativos (por exemplo, -4
não é a mesma coisa que 0 4 -
) e números de ponto flutuante.
Você pode assumir que a entrada é válida e segue as regras acima
Casos de teste
Entrada:
-4 5 +
Saída:
1
Entrada:
5 2 /
Saída:
2.5
Entrada:
5 2.5 /
Saída:
2
Entrada:
5 1 2 + 4 * 3 - +
Saída:
14
Entrada:
4 2 5 * + 1 3 2 * + /
Saída:
2
eval
para analisar números? Parece bastante quebrado. (GolfScript é uma tal linguagem, tanto quanto eu estou ciente que eu acho que está quebrado também..)
eval(s)
é melhor quefloat(s)
~
. :-P