Notación polaca inversa
Es un método algebraico alternativo de introducción de datos. Su nombre viene por analogía con la relacionada notación polaca, una notación de prefijo introducida en 1920 por el matemático polaco Jan Łukasiewicz, en donde cada operador está antes de sus operandos.Este pequeño ejemplo ilustra la utilización de la notación polaca Inversa en los cálculos matemáticos que hacen internamente las computadoras.
El siguiente ejercicio aplica el algoritmo de conversión que se encuentra explicado detalladamente acá o consulta este documento.
A continuación esta algoritmo mencionado.
INICIO
Crear pila y la lista de salida, inicialmente vacias.
MIENTRAS lista de entrada no este vacia y
no se ha encontrado ningun error HACER
Extraer el primer termino de la lista (lo llamaremos E)
SEGUN-SEA E
CASO E es número :
Insertar E al final de la lista de salida
CASO E es la variable x :
Insertar E al final de la lista de salida
CASO E es un paréntesis izquierdo :
Insertar E en la pila
CASO E es un paréntesis derecho :
MIENTRAS La pila no este vacía y
su cima no sea un
paréntesis izquierdo HACER
Extraer elemento de la pila
Insertarlo al final de la lista de
salida
FIN-MIENTRAS
SI Encontramos el parentesis izquierdo ENTONCES
Extraerlo de la pila y destruirlo
SINO
Se ha detectado un ERROR 2
FIN-SI
Destruir E
CASO E es un operador :
MIENTRAS La pila no este vacía y
su cima sea un operador
de precedencia mayor o
igual que la de E HACER
Extraer elemento de la pila
Insertarlo al final de la lista de
salida
FIN-MIENTRAS
Insertar E en la pila
FIN-SEGUN-SEA
FIN-MIENTRAS
MIENTRAS
Pila no esté vacía HACER
Extraer elemento de la pila
Insertarlo al final de la lista de salida
FIN-MIENTRAS
Destruir
pila
FIN
Link de descarga:Código fuenteClave de cifrado: !X6MWbiCLcjJhNYs4_S4KHotYDlXRJ9petk0_IjsGa9Y Pass: http://proj-java.blogspot.com