import java.util.*;

/*
 * Évaluation d'une expression arithmétique en notation postfixée passée en arguments de la ligne
 * de commande.
 * Son fonctionne esrt élémentaire : lorsqu'on rencontre un nombre on l'empile, lorsqu'on recontre
 * un opérateur, on dépile ses opérandes, on effectue l'opération et on empile le résultat.
 * Attention: ce code ne fonctionne que si l'expression est correcte. Sauriez-vous le modifier
 * de sorte que les mauvaises expressions soient détectées ?
 * Sauriez-vous rajouter un opérateur unaire ? Par exemple '$' qui permettrait de changer le signe
 * d'une valeur ?
 * Sauriez-vous rajouter l'opérateur de division '/' ?
 * Sauriez-vous rajouter un opérateur permettant de calculer le maximum d'un ensemble d'éléments, par
 * exemple si la pile contient en son sommet v1, v2, vn, n alors l'opérateur M renverrait
 * max(v1,v2,...vn) ?
 */
public class EvaluationPostfixee {
  public static void main(String []arg) {
    try {
      Stack<Integer> pile = new Stack<Integer>();
      for (String s : arg) {
        if (s.equals("*") || s.equals("+")) {
          int v1 = pile.pop();
          int v2 = pile.pop();
          if (s.equals("+")) {
            pile.push(v1+v2);
          } else if (s.equals("*")) {
            pile.push(v1*v2);
          }
        } else {
          int v = Integer.parseInt(s);
          pile.push(v);
        }
      }
      System.out.println("Resultat="+pile.pop());
    } catch(Exception e) {}
  }
}