Expressió prefixada P59813


Warning: Deprecated problem

This problem is marked as deprecated.

Although this problem remains in the system because of historic reasons, it may have some issues and should not be used anymore.

Deprecation indication: Please use P20006 instead.

Statement
 

pdf   zip

html

Feu un programa que llegeixi una expressió prefixada, i escrigui el resultat d’avaluar-la. Els operadors possibles són suma, resta i multiplicació. Els operands són nombres naturals entre 0 i 9 (inclosos).

Entrada

L’entrada és una expressió prefixada. Això vol dir que sempre apareix l’operador abans que els seus operands. 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: el resultat d’avaluar l’expressió.

Observació

Utilitzeu recursivitat (no taules). Fixeu-vos que una expressió o bé és un dígit, o bé és un operador seguit d’una expressió seguit d’una altra expressió.

Public test cases
  • Input

    + 4 3
    

    Output

    7
    
  • Input

    * 8 + 4 3
    

    Output

    56
    
  • Input

    * - 2 8 + 4 3
    

    Output

    -42
    
  • Information
    Author
    Salvador Roura
    Language
    Catalan
    Other languages
    English
    Official solutions
    C++
    User solutions
    C++ Python