Feu un programa que llegeixi una expressió parentitzada del tot, i que escrigui el resultat d’avaluar-la. Els tres operadors possibles són suma, resta i multiplicació. Els operands són naturals entre 0 i 9 (inclosos).
Entrada
L’entrada té una expressió completament parentitzada. Això vol dir que sempre apareixen parèntesis al voltant de subexpressions que no siguin dígits. Per exemple, l’expressió 4 + 3 vindria donada així:
( 4 + 3 )
L’expressió 8 * (4 + 3) vindria donada així:
( 8 * ( 4 + 3 ) )
L’expressió (2 − 8) * (4 + 3) vindria donada així:
((2-8)*(4+3))
Sortida
Cal escriure un enter en una línia: el resultat d’avaluar l’expressió.
Pista
Fixeu-vos que una expressió o bé és directament un dígit, o bé és un parèntesi obert, seguit d’una expressió, d’un operador, d’una altra expressió, i d’un parèntesi tancat. Inspireu-vos en aquest fet per escriure un senzill programa recursiu.
Input
9
Output
9
Input
( 3 + 4 )
Output
7
Input
( 8 * ( 4 + 3 ) )
Output
56
Input
( ( 2 - 8 ) * ( 4 + 3 ) )
Output
-42
Input
( ( 3 * 2 ) + 1 )
Output
7