Descarga la aplicación para disfrutar aún más
Vista previa del material en texto
INSTITUTO POLITÉCNICO NACIONAL Escuela Superior de Cómputo Edgar Alejandro Bello Muñoz 1CM8 Estructuras de datos Examen Primer Parcial Fecha: 04/03/2020 Bello Muñoz Edgar Alejandro Grupo: 1CM8 Examen Primer Parcial Fecha 04/03/2020 1 Examen. Conversión y evaluación de expresiones en prefijo y postfijo Descripción del problema Se solicita la implementación de un programa que utilizando pilas de memoria dinámica, convierta una expresión matemática a sus equivalentes en notación polaca (prefija) y postfija, posteriormente, imprima las cadenas resultantes y las evalúe. Para ello se hará uso también de operaciones de pila como introducir elementos a la pila, quitar el último elemento y mostrar los elementos de la pila. Descripción de las entradas Dentro de la función comprobar, se le solicita al usuario que introduzca una expresión matemática haciendo uso de números enteros, paréntesis y los operadores +, -, *, / , ^. Como en la función completar se modifica la cadena para que tenga el formato requerido por las demás funciones del programa, es indiferente si existen o no espacos entre los términos y números que conforman la expresión. Descripción de las salidas En la función main, aparecen como salidas las expresiones escritas en prefijo y postfijo, que resultan de las llamadas a sus correspondientes funciones de tipo string. Posteriormente, las salidas siguientes son el resultado de la cadena, provenientes de las llamadas a las funciones de evaluación en prefijo y postfijo. Ejemplos de ejecución Introducción de expresión sin espacios en la cadena de texto. (5+4) / 3*8+5*4 9 / 3 * 8 + 20 3 * 8 +20 24 + 20 = 44 Bello Muñoz Edgar Alejandro Grupo: 1CM8 Examen Primer Parcial Fecha 04/03/2020 2 Introducción de expresión con espacios en la cadena de texto, conversión a prefijo 2 ^ 3 – 5 * 2 + 6 / 3 ^23 - *52 + /63 -^23*52 + /63 +-^23*52/63 Expresión mixta (operadores separados tanto con espacios como sin espacios). (4+4) / 2 + 5^2-9 44+/2 + 52^-9 44+2/ + 52^-9 44+2/ 52^+9- Consideraciones Si se inicia o finaliza una expresión con un operador, el programa se trabará y posteriormente se cerrará. Bello Muñoz Edgar Alejandro Grupo: 1CM8 Examen Primer Parcial Fecha 04/03/2020 3 Al requerir enteros para hacer la evaluación, si se introduce algún otro carácter que no sea un número entero el programa deja de reaccionar. El programa no es repetitivo, si se desea realizar otra evaluación tiene que volver a ejecutarse.
Compartir