Exercices de programmation pour classes préparatoires
Ecrire une fonction eval_postfixe(expression) qui evalue une expression arithmetique en notation postfixe (notation polonaise inversee) et renvoie le resultat (un entier).
Entree : une liste de tokens. Chaque token est soit un entier, soit un operateur parmi "+", "-", "*", "//" (division entiere).
Notation postfixe : les operandes sont places avant les operateurs. Par exemple, 2 3 + signifie 2 + 3, et 2 3 + 4 * signifie (2 + 3) * 4.
Methode : utiliser une pile. Parcourir les tokens de gauche a droite : - Si c'est un nombre, l'empiler - Si c'est un operateur, depiler deux operandes, appliquer l'operateur, empiler le resultat
A la fin, la pile contient un seul element : le resultat.
| Appel | Résultat attendu |
|---|---|
| eval_postfixe([2, 3, '+']) | 5 |
| eval_postfixe([2, 3, '+', 4, '*']) | 20 |
Connectez-vous pour soumettre du code.