Expresiones algebraicas

Te pedimos que programes una calculadora capaz de evaluar expresiones
matemáticas sencillas (suma +, resta -, producto * y división entera /).
Para que te resulte más fácil, te pondremos muchos paréntesis. En
concreto: siempre que tengamos una operación, como por ejemplo, las
sumas “3 + 4” o “(1 * 4) + 2”, se dará un nivel de paréntesis adicional
para agrupar la operación y los operandos: “(3 + 4)” y “((1 * 4) + 2)”.

Escribe un programa que evalúe este tipo de expresiones
extra-parentizadas.

Entrada

La entrada está formada por un número indeterminado, pero no superior a
500, de casos de prueba, cada uno de los cuáles consiste en una línea
con una expresión matemática como las descritas. Todos los números que
aparecen como operandos están entre el 0 y el 999, ambos inclusive.

Salida

Escribe, para cada caso de pruebas, el resultado de evaluar la expresión
matemática. Ten en cuenta que no es posible dividir por 0: si esto
ocurriera al evaluar una expresión, escribe “DIV 0” como salida
correspondiente.

Se te garantiza que todas las expresiones están correctamente
parentizadas, y que durante el curso de su evaluación no encontrarás
números cuyo valor absoluto sea mayor que 10¹⁵.

Observación

La división entera consiste en dividir dos enteros y quedarse con el
cociente, sin decimales, y descartar el resto, como al usar la división
entera / en C o C++.

Puntuación

Se te dará 10 puntos por resolver cada una de las 10 entradas. La
entrada i-ésima no contendrá expresiones con más de
1, 2, 3, 5, 10, 20, 30, 100, 300, 1000 operaciones. Además, las primeras
3 entradas no contendrán números superiores al 9 (como el Ejemplo 1) y
las primeras 5 entradas no contendrán ninguna división (como el Ejemplo
2).

Información del problema

Autoría: Omer Giménez

Generación: 2026-01-25T10:35:03.592Z

© Jutge.org, 2006–2026.
https://jutge.org
