[JAVA] algorithme Notation polonaise inversé

[Résolu/Fermé]
Signaler
-
 jasinskimathiiiiieu -
Bonjour,
voiçi un algorithme:

Tant qu'il y a des tokens en entrée {

Examiner le token courant sur le fichier d'entrée
Si c'est un opérande, le placer sur le fichier de sortie
Si c'est une parenthèse ouvrante, la mettre sur la pile
Si c'est un opérateur, alors

Si la pile est vide, pousser l'opérateur sur la pile
Si le sommet de la pile est une parenthèse ouvrante, pousser l'opérateur sur la pile
Si l'opérateur est prioritaire sur celui au sommet de la pile, pousser l'opérateur sur la pile
Sinon, enlever l'opérateur de la pile et le mettre sur le fichier de sortie. Replacer ensuite l'opérateur courant sur la pile

Si c'est une parenthèse fermante, enlever les opérateurs de la pile et les placer sur le fichier de sortie jusqu'à ce que l'on rencontre la parenthèse ouvrante, que l'on élimine.
}

Enlever tous les opérateurs restants et les placer sur le fichier de sortie.

la ligne en gras: je ne vois pas comment je pourais programmer les niveau de priorité auriez-vous une idée?


2 réponses

Messages postés
183
Date d'inscription
jeudi 22 janvier 2009
Statut
Membre
Dernière intervention
18 octobre 2013
39
Hello...

Je dis peut être une connerie, mais je viens de programmer une calculatrice RPN (Polonaise inversée) pour les cours, et on ne peut pas ajouter d'opérateur dans la pile.

De plus, le but d'une calculatrice polonaise est justement de ne pas utiliser les parenthèses. Essai de télécharger une RPN sur ton pc et fais quelques tests...
1
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 41713 internautes nous ont dit merci ce mois-ci


oui, mais en faite l'utilisateur doit entrer un calcul en mode normal, et mon programme sert justement à convertir celle-çi en NPI