Bonjour,
je me penche sur cet algo (voir ci dessous : source wikipedia) pour convertir une expression en notation infixe en notation polonaise inverse.
seulement je n'arrive pas a comprendre de quoi il s'agit quand on parle d'associativite a gauche ou a droite.
------------------------------------------------------
tant quil y a des tokens à lire:
lire le token
si cest un nombre lajouter à la sortie
si cest un opérateur o1 alors
1) sil y a un opérateur o2 sur le haut de la pile et si lune des conditions suivantes est remplie.
o1 est associativité à gauche et sa priorité est inférieure ou égale à celle do2, ou
o1 est associativité à droit et sa priorité est inférieure à celle do2,
retirer o2 de la pile pour le mettre dans la sortie
2) mettre o1 sur la pile
si le token est une parenthèse gauche, le mettre sur la pile
si le token est une parenthèse droite, alors dépiler les opérateurs et les mettant dans la sortie jusquà la parenthèse gauche qui elle aussi sera dépilée, mais pas mise dans la sortie. Si toute la pile est dépilée sans touver de parenthèse gauche cest quil y a un mauvais parenthésage.
après la lecture du dernier token il faut dépiler tous les opérateurs de la pile et mettre chaque élément dans la sortie.
Sil y a une parenthèse gauche cest quil y a eu un mauvais parenthésage.
------------------------------------------------------
du coup, je narrive pas a traduire cette partie de l'algo en C
Quelqu'un pourrait il mexpliquer de quoi il sagit ?
Merci davance.