on dit qu'une expression arithmétique est complètement parenthésée si chaque terme situé de part et d'autre d'un opérateur est entouré d'une parenthèse
expl : (a*(b+(c/d)))
pour eviter cette nécéssité un mathématicien a proposé une notation dite polonaise
dans laquelle les opérateurs suivent immédiatement les opérandes sur lesquelles ils agissent
exple
(a*(b+(c/d))) nous donne le résultat suivant abcd / + *
donc
ce qui se passe c'est dans une pile1 on met les opérateurs
dans une pile 2 on met les opérandes
et lorsque on rencontre une parenthèse ouvrante on ne fait rien
et lorsque c'est une parenthèse fermante on dépile p2 et empile p1
en fin de l'expression on obtient la pile 2 vide alors on dépile p1 dans p2
je voudrais bien que vous m'aidez à résoudre cette programme avec c++ parce que la résolution que j'ai trouvé n'a pas fonctionné
j'attends vos réponses le plutot possible
Partager