Merlin RPN - Strings


Name Strings
RPN
10 8 5 * +
NORMAL
(10+(8*5))
EXEMPLO_NORMAL
SEMPRE INICIA COM O '(', PODE SER COM OU SEM ESPAÇOS
INICIANDO_A_B_C
$A=1 ; $B=4 ; $C=3
DELTA_RPN
B 2 ^ 4 A C * * -
DELTA_NORMAL
(B^2 - (4*A*C))
CALCULAR_STRING
DELTA_RPN  @EXECUTA_STRING  ou  DELTA_NORMAL  @EXECUTA_STRING
HELP_STRING
EXEMPLOS CADASTRADOS COMO STRINGS, PRA NÃO SEREM EXECUTADOS DIRETAMENTE COMO UMA VARÍAVEL, 
EXPRESSÃO OU MÓDULO. MAS FUNCIONAM COMO UM MÓDULO OU PROGRAMA, CHAMANDO COM A FUNÇÃO @EXECUTA_STRING
EXEMPLO_RPN
10  8  5  *  +  

OPERAÇÃO É EXECUTADA APÓS OS VALORES, ESPAÇO SEMPRE SEPARANDO.

Guarda o 10 na pilha, guarda o 8, guarda o 5. Quando recebe o * , multiplica o 8 pelo 5 = 40 ,
tira o 8 e o 5 da pilha, guarda na pilha o resultado parcial 40.

Quando recebe o + , soma o 10 com o 40 = 50 , tira o 10 e o 40 da pilha e coloca o 50 na pilha.
Só sobrou o 50 na pilha, que é o resultado da expressão.

O resultado quando precisar, sempre será o valor da última pilha, nesse caso , só sobrou o 50, mas a
pilha poderia estar com vários outros valores. o ÚLTIMO VALOR DA PILHA SERIA O 50, QUE É O
RESULTADO