SlideShare una empresa de Scribd logo
1 de 8
2008UNIVERSIDAD CÉSAR VALLEJOFACULTAD DE INGENIERÍAESCUELA DE SISTEMASNOTACIÓN POSTFIJA E INFIJANOMBRE: Contreras Ulloa, Shirley Asunción.CICLO: III-ADOCENTE: Ing. Oscar Alcántara MorenoCURSO: Estructura de Datos<br />NOTACIÓN POSTFIJA E INFIJA<br />class nodo<br />{<br />private char caracter;<br />private nodo enlace;<br />private nodo(char x)<br />{<br />caracter=x;<br />enlace=null;<br />}<br />//constructor<br />public nodo(char x, nodo enlc)<br />{<br />caracter=x;<br />enlace=enlc;<br />}<br />public void asigna_enlace(nodo enlc)<br />{<br />enlace=enlc;<br />}<br />public void asigna_caracter(char x)<br />{<br />caracter=x;<br />}<br />public char retorna_caracter()<br />{<br />return caracter;<br />}<br />public nodo retorna_enlace()<br />{<br />return enlace;<br />}<br />public void mostrar_nodo()<br />{<br />System.out.println(caracter+quot;
 quot;
);<br />//System.out.println(quot;
El enlace es: quot;
+enlace);<br />}<br />}<br />class cola<br />{<br />private nodo primero;<br />//constructor<br />public cola()<br />{<br />primero=null;<br />}<br />public boolean vacia()<br />{<br />if(primero==null)<br />return true;<br />else<br />return false;<br />}<br />public void insertar_cola(char x)//este tipo de insertar es el mismo <br />{<br />nodo nuevo =new nodo(x, null);    //que el de una lista enlazada insertar al final<br />if(primero==null)<br />primero=nuevo;<br />    else<br />    {<br />nodo ultimo=primero;<br />while(ultimo.retorna_enlace()!=null)<br />{<br />   ultimo=ultimo.retorna_enlace();<br />}<br />ultimo.asigna_enlace(nuevo);<br />}<br />}<br />public void eliminar_primero()<br />{<br />if(primero!=null)<br />primero=primero.retorna_enlace();<br />}<br />public char retorna_primero()<br />{<br />return primero.retorna_caracter();<br />}<br />public void mostrar_cola()<br />{<br />nodo aqui=primero;<br />System.out.println(quot;
La cola es: quot;
);<br />while(aqui!=null)<br />{<br />aqui.mostrar_nodo();<br />aqui=aqui.retorna_enlace();<br />}<br />System.out.println(quot;
Se mostro la colaquot;
);<br />}<br />}<br />class pila<br />{<br />private nodo cima;<br />//constructor<br />public pila()<br />{<br />cima=null;<br />}<br />public boolean vacia()<br />{<br />if(cima==null)<br />return true;<br />else<br />return false;<br />}<br />public void insertar_cima(char x)//este tipo de insertar es el mismo <br />{<br />nodo nuevo=new nodo(x, cima);<br />cima=nuevo;<br />}<br />public char retorna_cima() <br />{<br />return cima.retorna_caracter();<br />}<br />public void eliminar_cima()<br />{<br />if(cima!=null)<br />{<br />cima=cima.retorna_enlace();<br />}<br />}<br />public void mostrar_pila()<br />{<br />nodo aqui=cima;<br />System.out.println(quot;
Los nodos de la pilaquot;
);<br />while(aqui!=null)<br />{<br />aqui.mostrar_nodo();<br />aqui=aqui.retorna_enlace();<br />}<br />System.out.println(quot;
Se mostraron todos los nodos de la pilaquot;
);<br />}<br />}<br />class nodo2<br />{<br />private double caracter;<br />private nodo2 enlace;<br />private nodo2(double x)<br />{<br />caracter=x;<br />enlace=null;<br />}<br />//constructor<br />public nodo2(double x, nodo2 enlc)<br />{<br />caracter=x;<br />enlace=enlc;<br />}<br />public void asigna_enlace(nodo2 enlc)<br />{<br />enlace=enlc;<br />}<br />public void asigna_caracter(double x)<br />{<br />caracter=x;<br />}<br />public double retorna_caracter()<br />{<br />return caracter;<br />}<br />public nodo2 retorna_enlace()<br />{<br />return enlace;<br />}<br />public void mostrar_nodo()<br />{<br />System.out.println(caracter+quot;
 quot;
);<br />//System.out.println(quot;
El enlace es: quot;
+enlace);<br />}<br />}<br />class pila2<br />{<br />private nodo2 cima;<br />//constructor<br />public pila2()<br />{<br />cima=null;<br />}<br />public boolean vacia()<br />{<br />if(cima==null)<br />return true;<br />else<br />return false;<br />}<br />public void insertar_cima(double x)//este tipo de insertar es el mismo <br />{<br />nodo2 nuevo=new nodo2(x, cima);<br />cima=nuevo;<br />}<br />public double retorna_cima() <br />{<br />return cima.retorna_caracter();<br />}<br />public void eliminar_cima()<br />{<br />if(cima!=null)<br />{<br />cima=cima.retorna_enlace();<br />}<br />}<br />public void mostrar_pila()<br />{<br />nodo2 aqui=cima;<br />System.out.println(quot;
Los nodos de la pilaquot;
);<br />while(aqui!=null)<br />{<br />aqui.mostrar_nodo();<br />aqui=aqui.retorna_enlace();<br />}<br />System.out.println(quot;
Se mostraron todos los nodos de la pilaquot;
);<br />}<br />}<br />import java.io.*;<br />class aplicacion<br />{<br />public static void main (String [] args)<br />{<br />BufferedReader entra =new BufferedReader(new InputStreamReader(System.in));<br />pila pilita = new pila();<br />cola colita = new cola();<br />char caracter='';<br />int pp=0, pe=0;<br />String exp_infija=quot;
quot;
;<br />try<br />{<br />System.out.println(quot;
La expresión Infija es: quot;
);<br />exp_infija=entra.readLine();<br />for(int i=0; i<exp_infija.length(); i++)<br />{<br />caracter=exp_infija.charAt(i);<br />switch(caracter)<br />{<br />case '+': <br />case '-': <br />case '*': <br />case '/': <br />case '^':<br />if(pilita.vacia())<br />{<br />pilita.insertar_cima(caracter);<br />}<br />else<br />{<br />pe=prioridad(caracter);<br />pp=prioridad(pilita.retorna_cima());<br />if(pe>pp)<br />pilita.insertar_cima(caracter);<br />else<br />{<br />while(!pilita.vacia() &&(pe<=pp))<br />{<br /> colita.insertar_cola(pilita.retorna_cima());<br /> pilita.eliminar_cima();<br /> if(!pilita.vacia())<br /> {<br /> pp=prioridad(pilita.retorna_cima());<br /> }<br />}<br />pilita.insertar_cima(caracter);<br />}<br />}<br />break;<br />case '(':<br />pilita.insertar_cima(caracter);<br />break;<br />case ')':<br />while(pilita.retorna_cima()!='(')<br />{<br />colita.insertar_cola(pilita.retorna_cima());<br />pilita.eliminar_cima();<br />}<br />pilita.eliminar_cima();<br />break;<br />default:<br />colita.insertar_cola(caracter);<br />}<br />}<br />while(!pilita.vacia())<br />{<br /> colita.insertar_cola(pilita.retorna_cima());<br /> pilita.eliminar_cima();<br />}<br />System.out.println(quot;
La Expresion postfija es: quot;
);<br />colita.mostrar_cola();<br />//Inicia la operaciones para encontrar el resultado<br />double opn1,opn2,r,num_ca,res;// donde r es resultado preliminar, num_ca es el numero que da del codigo asqui<br /> pila2 p = new pila2();<br /> while(!colita.vacia())<br />{<br /> caracter=colita.retorna_primero();<br />             colita.eliminar_primero();<br /> switch(caracter)<br /> {<br /> case '+': <br /> case '-':<br /> case '*':<br /> case '/': <br /> case '^':<br />  opn2=p.retorna_cima();<br />     p.eliminar_cima();<br />     opn1=p.retorna_cima();<br />     p.eliminar_cima();<br />     r=opciones(opn1,opn2,caracter);<br />               p.insertar_cima(r);<br />               break;<br />          default:<br />             num_ca=caracter-48;<br />                   p.insertar_cima(num_ca);<br /> }<br /> }<br /> res=p.retorna_cima();<br /> System.out.println(quot;
El resultado es : quot;
+res);<br />}<br />catch(Exception err)<br />{<br />System.out.println(quot;
Error en el ingreso de datosquot;
+err);<br />}<br />}<br />public static int prioridad(char operador)<br />{<br />int v=0;<br />switch(operador)<br />{<br />case '(': v = 0;<br />        break;<br />case '+': v = 1;<br />break;<br />case '-': v = 1;<br />break;<br />case '*': v = 2;<br />break;<br />case '/': v = 2;<br />break;<br />case '^': v = 3;<br />break;<br />}<br />return v;<br />}<br />public static double opciones(double opn1,double opn2,char operador)<br />{<br />   double valor=0;<br />   switch(operador)<br />     {<br />case '^' : valor = Math.pow(opn1,opn2);break;<br />case '*' : valor = opn1*opn2;break;<br />case '/' : valor = opn1/opn2;break;<br />case '+' : valor = opn1+opn2;break;<br />case '-' : valor = opn1-opn2;break;<br />     }<br />   return valor;<br />}<br />}<br />
Notación postfija e infija
Notación postfija e infija
Notación postfija e infija
Notación postfija e infija
Notación postfija e infija
Notación postfija e infija
Notación postfija e infija

Más contenido relacionado

La actualidad más candente

Tema 3: Procesadores VLIW y procesadores vectoriales.
Tema 3: Procesadores VLIW y procesadores vectoriales.Tema 3: Procesadores VLIW y procesadores vectoriales.
Tema 3: Procesadores VLIW y procesadores vectoriales.Manuel Fernandez Barcell
 
Algoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamientoAlgoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamientoLutzo Guzmán
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesJosé Antonio Sandoval Acosta
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre Juan Anaya
 
Tecnicas de busqueda en inteligencia artificial
Tecnicas de busqueda en inteligencia artificialTecnicas de busqueda en inteligencia artificial
Tecnicas de busqueda en inteligencia artificialDamelysCarrillo2
 
100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativos100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativosPatriciaDavila16
 
Comandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoComandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoCISCO NETWORKING
 
metodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificialmetodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificialNoraVelasquez4
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Josue Lara Reyes
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosAbimael hernandez
 
Sistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMSistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMMari Cruz
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De TuringRicardo Quintero
 
Búsqueda no informada - Búsqueda bidireccional
Búsqueda no informada - Búsqueda  bidireccionalBúsqueda no informada - Búsqueda  bidireccional
Búsqueda no informada - Búsqueda bidireccionalLaura Del Pino Díaz
 
1.4 software numerico
1.4 software numerico1.4 software numerico
1.4 software numericomorenito9001
 
Software en tiempo real
Software en tiempo realSoftware en tiempo real
Software en tiempo realAeivans
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacionLuis Igoodbad
 

La actualidad más candente (20)

Tema 3: Procesadores VLIW y procesadores vectoriales.
Tema 3: Procesadores VLIW y procesadores vectoriales.Tema 3: Procesadores VLIW y procesadores vectoriales.
Tema 3: Procesadores VLIW y procesadores vectoriales.
 
Busqueda por profundidad iterativa
Busqueda por profundidad iterativaBusqueda por profundidad iterativa
Busqueda por profundidad iterativa
 
Programación 3: listas enlazadas
Programación 3: listas enlazadasProgramación 3: listas enlazadas
Programación 3: listas enlazadas
 
Algoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamientoAlgoritmos de busqueda - hash truncamiento
Algoritmos de busqueda - hash truncamiento
 
Estructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no linealesEstructura de Datos - Unidad 4 Estructuras no lineales
Estructura de Datos - Unidad 4 Estructuras no lineales
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre
 
Tecnicas de busqueda en inteligencia artificial
Tecnicas de busqueda en inteligencia artificialTecnicas de busqueda en inteligencia artificial
Tecnicas de busqueda en inteligencia artificial
 
Manejo de memoria
Manejo de memoriaManejo de memoria
Manejo de memoria
 
100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativos100 ejercicios-resueltos-de-sistemas-operativos
100 ejercicios-resueltos-de-sistemas-operativos
 
Comandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos ciscoComandos de configuracion de dispositivos cisco
Comandos de configuracion de dispositivos cisco
 
metodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificialmetodos de busqueda en inteligencia artificial
metodos de busqueda en inteligencia artificial
 
Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)Conceptos de POO (Programacion Orientada a Objetos)
Conceptos de POO (Programacion Orientada a Objetos)
 
Mecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmosMecanismos de exclusion mutua y algoritmos
Mecanismos de exclusion mutua y algoritmos
 
Sistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUMSistemas Operativos I- Algoritmo de QUANTUM
Sistemas Operativos I- Algoritmo de QUANTUM
 
Parte 4 Máquinas De Turing
Parte 4  Máquinas De  TuringParte 4  Máquinas De  Turing
Parte 4 Máquinas De Turing
 
Búsqueda no informada - Búsqueda bidireccional
Búsqueda no informada - Búsqueda  bidireccionalBúsqueda no informada - Búsqueda  bidireccional
Búsqueda no informada - Búsqueda bidireccional
 
Merge sort
Merge sortMerge sort
Merge sort
 
1.4 software numerico
1.4 software numerico1.4 software numerico
1.4 software numerico
 
Software en tiempo real
Software en tiempo realSoftware en tiempo real
Software en tiempo real
 
Colas en programacion
Colas en programacionColas en programacion
Colas en programacion
 

Similar a Notación postfija e infija

Pila dinamica y pila estatica
Pila dinamica y pila estaticaPila dinamica y pila estatica
Pila dinamica y pila estaticaJoeCorp
 
Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeansedgar muñoz
 
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01cursobeta
 
P R A C T I C A2
P R A C T I C A2P R A C T I C A2
P R A C T I C A2climancc
 
Conexion sql server 2005 java netbeans
Conexion sql server 2005 java netbeansConexion sql server 2005 java netbeans
Conexion sql server 2005 java netbeansjbersosa
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datosjubacalo
 
Programa en c de listas
Programa en c de listasPrograma en c de listas
Programa en c de listasJohan Niño G
 
Comunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto ParaleloComunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto ParaleloMauro Gomez Mejia
 
JUEGO CONCENTRECE PARA ENTORNO DEV C++
JUEGO CONCENTRECE PARA ENTORNO DEV C++JUEGO CONCENTRECE PARA ENTORNO DEV C++
JUEGO CONCENTRECE PARA ENTORNO DEV C++Freddy Fuentes
 
Tutoria Lenguaje C++
Tutoria Lenguaje C++Tutoria Lenguaje C++
Tutoria Lenguaje C++ruth_reategui
 

Similar a Notación postfija e infija (20)

Pila dinamica y pila estatica
Pila dinamica y pila estaticaPila dinamica y pila estatica
Pila dinamica y pila estatica
 
Ejercicios en Netbeans
Ejercicios en NetbeansEjercicios en Netbeans
Ejercicios en Netbeans
 
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
Ejerciciosdeprogramacionconcurrente 111021172712-phpapp01
 
Ejemplos java
Ejemplos javaEjemplos java
Ejemplos java
 
Tipos basicos de java
Tipos basicos de javaTipos basicos de java
Tipos basicos de java
 
P R A C T I C A2
P R A C T I C A2P R A C T I C A2
P R A C T I C A2
 
Conexion sql server 2005 java netbeans
Conexion sql server 2005 java netbeansConexion sql server 2005 java netbeans
Conexion sql server 2005 java netbeans
 
Java::Acceso a Bases de Datos
Java::Acceso a Bases de DatosJava::Acceso a Bases de Datos
Java::Acceso a Bases de Datos
 
Programa en c de listas
Programa en c de listasPrograma en c de listas
Programa en c de listas
 
Programas en netbeans
Programas en netbeansProgramas en netbeans
Programas en netbeans
 
Comunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto ParaleloComunicacion Java Envio De Datos Al Puerto Paralelo
Comunicacion Java Envio De Datos Al Puerto Paralelo
 
Unidad iii pilas y colas
Unidad iii pilas y colasUnidad iii pilas y colas
Unidad iii pilas y colas
 
Practicas de programacion 11 20
Practicas de programacion 11 20Practicas de programacion 11 20
Practicas de programacion 11 20
 
JUEGO CONCENTRECE PARA ENTORNO DEV C++
JUEGO CONCENTRECE PARA ENTORNO DEV C++JUEGO CONCENTRECE PARA ENTORNO DEV C++
JUEGO CONCENTRECE PARA ENTORNO DEV C++
 
Tutoria Lenguaje C++
Tutoria Lenguaje C++Tutoria Lenguaje C++
Tutoria Lenguaje C++
 
Programacion ii
Programacion iiProgramacion ii
Programacion ii
 
Lecture 37
Lecture 37Lecture 37
Lecture 37
 
Parte 15
Parte 15Parte 15
Parte 15
 
ALGORITMOS EN JAVA
ALGORITMOS EN JAVAALGORITMOS EN JAVA
ALGORITMOS EN JAVA
 
Codigos de programas
Codigos de programasCodigos de programas
Codigos de programas
 

Más de Shirley Contreras Ulloa

Sistema Basado en Conocimiento - Logica Difusa
Sistema Basado en Conocimiento - Logica DifusaSistema Basado en Conocimiento - Logica Difusa
Sistema Basado en Conocimiento - Logica DifusaShirley Contreras Ulloa
 
Analisis de escenarios de ti en la gestion
Analisis de escenarios de ti en la gestionAnalisis de escenarios de ti en la gestion
Analisis de escenarios de ti en la gestionShirley Contreras Ulloa
 
Modelo dinámico de ecuaciones diferenciales
Modelo dinámico de ecuaciones diferencialesModelo dinámico de ecuaciones diferenciales
Modelo dinámico de ecuaciones diferencialesShirley Contreras Ulloa
 
MODELO DINÁMICO DE GESTIÓN DE IINVENTARIO
MODELO DINÁMICO DE GESTIÓN DE IINVENTARIOMODELO DINÁMICO DE GESTIÓN DE IINVENTARIO
MODELO DINÁMICO DE GESTIÓN DE IINVENTARIOShirley Contreras Ulloa
 

Más de Shirley Contreras Ulloa (20)

Gestion de Riesgos
Gestion de RiesgosGestion de Riesgos
Gestion de Riesgos
 
Sistema Basado en Conocimientos
Sistema Basado en ConocimientosSistema Basado en Conocimientos
Sistema Basado en Conocimientos
 
Sistema Basado en Conocimiento - Logica Difusa
Sistema Basado en Conocimiento - Logica DifusaSistema Basado en Conocimiento - Logica Difusa
Sistema Basado en Conocimiento - Logica Difusa
 
Analisis de escenarios de ti en la gestion
Analisis de escenarios de ti en la gestionAnalisis de escenarios de ti en la gestion
Analisis de escenarios de ti en la gestion
 
Campeonato deportivo
Campeonato deportivoCampeonato deportivo
Campeonato deportivo
 
PREGUNTAS DE SISTEMAS OPERATIVOS
PREGUNTAS DE SISTEMAS OPERATIVOSPREGUNTAS DE SISTEMAS OPERATIVOS
PREGUNTAS DE SISTEMAS OPERATIVOS
 
RESUMEN Y CLASIFICACION DE MEMORIA RAM
RESUMEN Y CLASIFICACION DE MEMORIA RAMRESUMEN Y CLASIFICACION DE MEMORIA RAM
RESUMEN Y CLASIFICACION DE MEMORIA RAM
 
PROCESO DE ATENCION A INTERRUPCIONES
PROCESO DE ATENCION A INTERRUPCIONESPROCESO DE ATENCION A INTERRUPCIONES
PROCESO DE ATENCION A INTERRUPCIONES
 
Modelo dinámico volterra
Modelo dinámico volterraModelo dinámico volterra
Modelo dinámico volterra
 
Modelo dinámico de ecuaciones diferenciales
Modelo dinámico de ecuaciones diferencialesModelo dinámico de ecuaciones diferenciales
Modelo dinámico de ecuaciones diferenciales
 
Modelo dinámico levaduras
Modelo dinámico levadurasModelo dinámico levaduras
Modelo dinámico levaduras
 
Jerarquía normativa
Jerarquía normativaJerarquía normativa
Jerarquía normativa
 
Modelo dinámico oferta y demanda
Modelo dinámico oferta y demandaModelo dinámico oferta y demanda
Modelo dinámico oferta y demanda
 
Proceso de arranque de un so
Proceso de arranque de un soProceso de arranque de un so
Proceso de arranque de un so
 
MODELO DINÁMICO DE GESTIÓN DE IINVENTARIO
MODELO DINÁMICO DE GESTIÓN DE IINVENTARIOMODELO DINÁMICO DE GESTIÓN DE IINVENTARIO
MODELO DINÁMICO DE GESTIÓN DE IINVENTARIO
 
Modelo dinámico huesped parasito
Modelo dinámico huesped parasitoModelo dinámico huesped parasito
Modelo dinámico huesped parasito
 
SEGMENTACION
SEGMENTACIONSEGMENTACION
SEGMENTACION
 
FUNCIONES DE STELLA
FUNCIONES DE STELLAFUNCIONES DE STELLA
FUNCIONES DE STELLA
 
ADMINISTRACION DE MEMORIA
ADMINISTRACION DE MEMORIAADMINISTRACION DE MEMORIA
ADMINISTRACION DE MEMORIA
 
Administracion de entrada y salida
Administracion de entrada y salidaAdministracion de entrada y salida
Administracion de entrada y salida
 

Último

Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxJOSEMANUELHERNANDEZH11
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafiosFundación YOD YOD
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdfIsabellaMontaomurill
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...AlanCedillo9
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfSergioMendoza354770
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)GDGSucre
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricKeyla Dolores Méndez
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesFundación YOD YOD
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIAWilbisVega
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...silviayucra2
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024GiovanniJavierHidalg
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxpabonheidy28
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx241521559
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...FacuMeza2
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersIván López Martín
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíassuserf18419
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan JosephBRAYANJOSEPHPEREZGOM
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveFagnerLisboa3
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfsoporteupcology
 

Último (19)

Hernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptxHernandez_Hernandez_Practica web de la sesion 12.pptx
Hernandez_Hernandez_Practica web de la sesion 12.pptx
 
La era de la educación digital y sus desafios
La era de la educación digital y sus desafiosLa era de la educación digital y sus desafios
La era de la educación digital y sus desafios
 
trabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdftrabajotecologiaisabella-240424003133-8f126965.pdf
trabajotecologiaisabella-240424003133-8f126965.pdf
 
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
Instrumentación Hoy_ INTERPRETAR EL DIAGRAMA UNIFILAR GENERAL DE UNA PLANTA I...
 
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdfPARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
PARTES DE UN OSCILOSCOPIO ANALOGICO .pdf
 
International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)International Women's Day Sucre 2024 (IWD)
International Women's Day Sucre 2024 (IWD)
 
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft FabricGlobal Azure Lima 2024 - Integración de Datos con Microsoft Fabric
Global Azure Lima 2024 - Integración de Datos con Microsoft Fabric
 
KELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento ProtégelesKELA Presentacion Costa Rica 2024 - evento Protégeles
KELA Presentacion Costa Rica 2024 - evento Protégeles
 
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE  DE TECNOLOGIA E INFORMATICA PRIMARIACLASE  DE TECNOLOGIA E INFORMATICA PRIMARIA
CLASE DE TECNOLOGIA E INFORMATICA PRIMARIA
 
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
POWER POINT YUCRAElabore una PRESENTACIÓN CORTA sobre el video película: La C...
 
Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024Cortes-24-de-abril-Tungurahua-3 año 2024
Cortes-24-de-abril-Tungurahua-3 año 2024
 
Plan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docxPlan de aula informatica segundo periodo.docx
Plan de aula informatica segundo periodo.docx
 
Proyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptxProyecto integrador. Las TIC en la sociedad S4.pptx
Proyecto integrador. Las TIC en la sociedad S4.pptx
 
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
ATAJOS DE WINDOWS. Los diferentes atajos para utilizar en windows y ser más e...
 
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 TestcontainersSalmorejoTech 2024 - Spring Boot <3 Testcontainers
SalmorejoTech 2024 - Spring Boot <3 Testcontainers
 
Trabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnologíaTrabajo Mas Completo De Excel en clase tecnología
Trabajo Mas Completo De Excel en clase tecnología
 
guía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Josephguía de registro de slideshare por Brayan Joseph
guía de registro de slideshare por Brayan Joseph
 
EPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial UninoveEPA-pdf resultado da prova presencial Uninove
EPA-pdf resultado da prova presencial Uninove
 
Redes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdfRedes direccionamiento y subredes ipv4 2024 .pdf
Redes direccionamiento y subredes ipv4 2024 .pdf
 

Notación postfija e infija

  • 1. 2008UNIVERSIDAD CÉSAR VALLEJOFACULTAD DE INGENIERÍAESCUELA DE SISTEMASNOTACIÓN POSTFIJA E INFIJANOMBRE: Contreras Ulloa, Shirley Asunción.CICLO: III-ADOCENTE: Ing. Oscar Alcántara MorenoCURSO: Estructura de Datos<br />NOTACIÓN POSTFIJA E INFIJA<br />class nodo<br />{<br />private char caracter;<br />private nodo enlace;<br />private nodo(char x)<br />{<br />caracter=x;<br />enlace=null;<br />}<br />//constructor<br />public nodo(char x, nodo enlc)<br />{<br />caracter=x;<br />enlace=enlc;<br />}<br />public void asigna_enlace(nodo enlc)<br />{<br />enlace=enlc;<br />}<br />public void asigna_caracter(char x)<br />{<br />caracter=x;<br />}<br />public char retorna_caracter()<br />{<br />return caracter;<br />}<br />public nodo retorna_enlace()<br />{<br />return enlace;<br />}<br />public void mostrar_nodo()<br />{<br />System.out.println(caracter+quot; quot; );<br />//System.out.println(quot; El enlace es: quot; +enlace);<br />}<br />}<br />class cola<br />{<br />private nodo primero;<br />//constructor<br />public cola()<br />{<br />primero=null;<br />}<br />public boolean vacia()<br />{<br />if(primero==null)<br />return true;<br />else<br />return false;<br />}<br />public void insertar_cola(char x)//este tipo de insertar es el mismo <br />{<br />nodo nuevo =new nodo(x, null); //que el de una lista enlazada insertar al final<br />if(primero==null)<br />primero=nuevo;<br /> else<br /> {<br />nodo ultimo=primero;<br />while(ultimo.retorna_enlace()!=null)<br />{<br /> ultimo=ultimo.retorna_enlace();<br />}<br />ultimo.asigna_enlace(nuevo);<br />}<br />}<br />public void eliminar_primero()<br />{<br />if(primero!=null)<br />primero=primero.retorna_enlace();<br />}<br />public char retorna_primero()<br />{<br />return primero.retorna_caracter();<br />}<br />public void mostrar_cola()<br />{<br />nodo aqui=primero;<br />System.out.println(quot; La cola es: quot; );<br />while(aqui!=null)<br />{<br />aqui.mostrar_nodo();<br />aqui=aqui.retorna_enlace();<br />}<br />System.out.println(quot; Se mostro la colaquot; );<br />}<br />}<br />class pila<br />{<br />private nodo cima;<br />//constructor<br />public pila()<br />{<br />cima=null;<br />}<br />public boolean vacia()<br />{<br />if(cima==null)<br />return true;<br />else<br />return false;<br />}<br />public void insertar_cima(char x)//este tipo de insertar es el mismo <br />{<br />nodo nuevo=new nodo(x, cima);<br />cima=nuevo;<br />}<br />public char retorna_cima() <br />{<br />return cima.retorna_caracter();<br />}<br />public void eliminar_cima()<br />{<br />if(cima!=null)<br />{<br />cima=cima.retorna_enlace();<br />}<br />}<br />public void mostrar_pila()<br />{<br />nodo aqui=cima;<br />System.out.println(quot; Los nodos de la pilaquot; );<br />while(aqui!=null)<br />{<br />aqui.mostrar_nodo();<br />aqui=aqui.retorna_enlace();<br />}<br />System.out.println(quot; Se mostraron todos los nodos de la pilaquot; );<br />}<br />}<br />class nodo2<br />{<br />private double caracter;<br />private nodo2 enlace;<br />private nodo2(double x)<br />{<br />caracter=x;<br />enlace=null;<br />}<br />//constructor<br />public nodo2(double x, nodo2 enlc)<br />{<br />caracter=x;<br />enlace=enlc;<br />}<br />public void asigna_enlace(nodo2 enlc)<br />{<br />enlace=enlc;<br />}<br />public void asigna_caracter(double x)<br />{<br />caracter=x;<br />}<br />public double retorna_caracter()<br />{<br />return caracter;<br />}<br />public nodo2 retorna_enlace()<br />{<br />return enlace;<br />}<br />public void mostrar_nodo()<br />{<br />System.out.println(caracter+quot; quot; );<br />//System.out.println(quot; El enlace es: quot; +enlace);<br />}<br />}<br />class pila2<br />{<br />private nodo2 cima;<br />//constructor<br />public pila2()<br />{<br />cima=null;<br />}<br />public boolean vacia()<br />{<br />if(cima==null)<br />return true;<br />else<br />return false;<br />}<br />public void insertar_cima(double x)//este tipo de insertar es el mismo <br />{<br />nodo2 nuevo=new nodo2(x, cima);<br />cima=nuevo;<br />}<br />public double retorna_cima() <br />{<br />return cima.retorna_caracter();<br />}<br />public void eliminar_cima()<br />{<br />if(cima!=null)<br />{<br />cima=cima.retorna_enlace();<br />}<br />}<br />public void mostrar_pila()<br />{<br />nodo2 aqui=cima;<br />System.out.println(quot; Los nodos de la pilaquot; );<br />while(aqui!=null)<br />{<br />aqui.mostrar_nodo();<br />aqui=aqui.retorna_enlace();<br />}<br />System.out.println(quot; Se mostraron todos los nodos de la pilaquot; );<br />}<br />}<br />import java.io.*;<br />class aplicacion<br />{<br />public static void main (String [] args)<br />{<br />BufferedReader entra =new BufferedReader(new InputStreamReader(System.in));<br />pila pilita = new pila();<br />cola colita = new cola();<br />char caracter='';<br />int pp=0, pe=0;<br />String exp_infija=quot; quot; ;<br />try<br />{<br />System.out.println(quot; La expresión Infija es: quot; );<br />exp_infija=entra.readLine();<br />for(int i=0; i<exp_infija.length(); i++)<br />{<br />caracter=exp_infija.charAt(i);<br />switch(caracter)<br />{<br />case '+': <br />case '-': <br />case '*': <br />case '/': <br />case '^':<br />if(pilita.vacia())<br />{<br />pilita.insertar_cima(caracter);<br />}<br />else<br />{<br />pe=prioridad(caracter);<br />pp=prioridad(pilita.retorna_cima());<br />if(pe>pp)<br />pilita.insertar_cima(caracter);<br />else<br />{<br />while(!pilita.vacia() &&(pe<=pp))<br />{<br /> colita.insertar_cola(pilita.retorna_cima());<br /> pilita.eliminar_cima();<br /> if(!pilita.vacia())<br /> {<br /> pp=prioridad(pilita.retorna_cima());<br /> }<br />}<br />pilita.insertar_cima(caracter);<br />}<br />}<br />break;<br />case '(':<br />pilita.insertar_cima(caracter);<br />break;<br />case ')':<br />while(pilita.retorna_cima()!='(')<br />{<br />colita.insertar_cola(pilita.retorna_cima());<br />pilita.eliminar_cima();<br />}<br />pilita.eliminar_cima();<br />break;<br />default:<br />colita.insertar_cola(caracter);<br />}<br />}<br />while(!pilita.vacia())<br />{<br /> colita.insertar_cola(pilita.retorna_cima());<br /> pilita.eliminar_cima();<br />}<br />System.out.println(quot; La Expresion postfija es: quot; );<br />colita.mostrar_cola();<br />//Inicia la operaciones para encontrar el resultado<br />double opn1,opn2,r,num_ca,res;// donde r es resultado preliminar, num_ca es el numero que da del codigo asqui<br /> pila2 p = new pila2();<br /> while(!colita.vacia())<br />{<br /> caracter=colita.retorna_primero();<br /> colita.eliminar_primero();<br /> switch(caracter)<br /> {<br /> case '+': <br /> case '-':<br /> case '*':<br /> case '/': <br /> case '^':<br /> opn2=p.retorna_cima();<br /> p.eliminar_cima();<br /> opn1=p.retorna_cima();<br /> p.eliminar_cima();<br /> r=opciones(opn1,opn2,caracter);<br /> p.insertar_cima(r);<br /> break;<br /> default:<br /> num_ca=caracter-48;<br /> p.insertar_cima(num_ca);<br /> }<br /> }<br /> res=p.retorna_cima();<br /> System.out.println(quot; El resultado es : quot; +res);<br />}<br />catch(Exception err)<br />{<br />System.out.println(quot; Error en el ingreso de datosquot; +err);<br />}<br />}<br />public static int prioridad(char operador)<br />{<br />int v=0;<br />switch(operador)<br />{<br />case '(': v = 0;<br /> break;<br />case '+': v = 1;<br />break;<br />case '-': v = 1;<br />break;<br />case '*': v = 2;<br />break;<br />case '/': v = 2;<br />break;<br />case '^': v = 3;<br />break;<br />}<br />return v;<br />}<br />public static double opciones(double opn1,double opn2,char operador)<br />{<br /> double valor=0;<br /> switch(operador)<br /> {<br />case '^' : valor = Math.pow(opn1,opn2);break;<br />case '*' : valor = opn1*opn2;break;<br />case '/' : valor = opn1/opn2;break;<br />case '+' : valor = opn1+opn2;break;<br />case '-' : valor = opn1-opn2;break;<br /> }<br /> return valor;<br />}<br />}<br />