Implementación dinámica
recursividad
 
Infijas y postfijas
Administrador
Plan de Curso
Modulo I
Unidad1
Unidad2
Modulo II
Unidad3
Unidad4
Modulo III

Unidad5

Unidad6
Foros
Chat

Blogs

Pascal

Descarga

Firefox

Email

Link
La principal aplicación de las pilas es la transformación de expresiones matemáticas, estas se pueden escribir segun diversos tipos de notaciones;

PARA TRANSFORMAR EXPRESIONES INFIJAS EN POSTFIJAS
Los operandos se mandan directamente a la salida.

Cuando se lee un operador se retiene en la pila. Los operadores se van poniendo en esta pila sucesivamente hasta encontrar uno con menor o igual prioridad y se coloca en ella este ultimo.

El parentesis derecho ono se coloca nunca en la pila y cuando aparece hay que desapilar todos los operadores hasta llegar al parentesis izquierdo y borrar este. Aunque este tiene mayor prioridad solo se saca de la pila cuando aparece uno derecho

Al final de la expresión extraer y desplegar los elementos de la pila hasta que se vacíe.

Hay que llevar una tabla de prioridad doble para cada operador.

Operador         Prioridad dentro de la pila     Prioridad fuera de la pila                 
      ^                               3                                             4(evaluacion de derecha a izquierda).             

       *,/                            2                                             2(evaluacion de izquierda a derecha)

       +`-                           1                                             1(evaluacion de izquierda a derecha)

      (                                0                                             5 (Operador especial)

El programa a mostrar utiliza una pila de caracter , cuyas operaciones son las definidas en el TAD pila

Cuando se acaba la entrada tambien se saca lo que hubiera en la pila.

Evaluación de expresiones aritmeticas

1.Mientras haya caracteres en la expresion extraer operandos y operadores repetir los pasos 2 y 3 para cada elemento de la expresión.

2.Si el elemento es un operador meterlo en una pila de números reales.

3.Si el elemento es un operador, lo designamos con &, entonces;

Saca los dos elelemntos superiores de la pila, los llamaremos X, Y respectivamente;

Evaluar Y& X; el resultado es Z= Y&X

El resultado Z, meterlo en la pila de reales.

Repetir a partir del paso 1.

4. el resultado de la evaluación de la expresión esta en el elemento cima de la pila.

Fin del algoritmo.

Ejercicios ejecutables

 

 

Google
Imprimir
Implementación dinámica
recursividad

Elaborado por ; Dinora Soto Castillo,. Dinora334@hotmail.com, dinorasoto2004@yahoo.comWebMaster : CIIUNA
WebMaster : CIIUNA.Optimizado para Internet Explorer y resolución 800x600.