3ra Evaluación I Término 2012-2013, Septiembre 11, 2012 /ICM00794
TEMA 2 (25 puntos) Las expresiones aritméticas en notación INFIX establece que en medio de los operandos (números[0-9]) debe existir un operador aritmético conocido (+, –, *, /).
En la computadora a veces se necesita representar la operación en notación PREFIX, la cual establece que primero se colocan el operador aritmético y luego los operandos.
Suponga que solamente tendrá como operandos números de una cifra.
INFIX | PREFIX | |
---|---|---|
2+3 | + 2 3 |
>>validainfix('2+3') ans= 1 >>validainfix('23+') ans=0 >>in2prefix('2+3') ans= + 2 3 |
9-6 | – 9 6 | |
5*4 | * 5 4 | |
8/7 | / 8 7 |
a) Escriba la función validainfix(cadena), la cual recibe una cadena de 3 caracteres solamente y verifica que los 2 operandos están en las posiciones inicial y final, y existe un operador aritmético en la mitad. La función devuelve 1 si es una cadena válida y 0 si no lo es.
b) Escriba la función in2prefix(cadena), la cual recibe una cadena de 3 caracteres previamente validado (llame a la función validar), y convierta la operación de notación INFIX a notación PREFIX.
Rúbrica: Definición de funciones (5 puntos). Validación de números y operadores (15 puntos), cambio de notación (10 puntos).