[JAVA] algorithme Notation polonaise inversé
Résolu
jasinskimathiiiiieu
-
jasinskimathiiiiieu -
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?
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?
A voir également:
- [JAVA] algorithme Notation polonaise inversé
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Annuaire inversé - Guide
- Ecran inversé - Guide
- Eclipse java - Télécharger - Langages
2 réponses
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...
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...