Expression Arithmetique

salihou Messages postés 3 Date d'inscription mercredi 29 septembre 2004 Statut Membre Dernière intervention 16 mai 2008 - 25 févr. 2008 à 21:24
mlahcine Messages postés 3 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 17 mai 2012 - 22 nov. 2009 à 12:03
Bonjour.
tout d'abors merci de lire cet S.O.S.
Voila je voudrais ecrire un algorithme puis faire sa traduction en C.
Cet algorithme à pour but une evaluation d'une expression arithmetique post fixée (en utilisant une PILE). C'est à dire. si on empile AB+C+D/ l'algorithme affiche: (((A+B)+C)/D). Merci de m'aider.

4 réponses

deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
26 févr. 2008 à 09:13
Yop,

Une des possibilité de faire, est d'utiliser un  arbre binaire, d'ailleur à moin de ce prendre grandement la tête , je pense que c'est la meilleur solution. Pour ce qui est de l'utilisation des arbres binaire, je pense que cela ne manque pas sur le site ou sur google :D Et sur le comment résoudre ton problème, cherche du coté des algorithmes pour les compilateur, car l'évaluation d'expression y est monaie courante.

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
0
deck_bsd Messages postés 1243 Date d'inscription jeudi 31 mars 2005 Statut Membre Dernière intervention 3 août 2016 2
26 févr. 2008 à 09:13
Yop,

Une des possibilité de faire, est d'utiliser un  arbre binaire, d'ailleur à moin de ce prendre grandement la tête , je pense que c'est la meilleur solution. Pour ce qui est de l'utilisation des arbres binaire, je pense que cela ne manque pas sur le site ou sur google :D Et sur le comment résoudre ton problème, cherche du coté des algorithmes pour les compilateur, car l'évaluation d'expression y est monaie courante.

++
deck_bsd
___________________________________
[http://deck-bsd.eurower.net]
0
cs_algori Messages postés 868 Date d'inscription dimanche 26 décembre 2004 Statut Membre Dernière intervention 26 février 2008 1
26 févr. 2008 à 23:27
Bonsoir,

Une autre possiblité que tu peux approfondir :
-tu transforme l'expression saisie sous forme d'une file.
-ensuite tu postfixe la file (tu retournera donc une autre file)
-tu évalues la file postfixée.

Un conseil : dessine sur un papier pour voir l'empilement, le dépilement, l'enfilement et le défilement de tes éléments de file.
Ne pas oublier les priorités des opérateurs : priorité de * > priorité de +.

La gestion de fonctions est un peu plus sportive mais réalisable en réfléchissant un peu.

@++
0
mlahcine Messages postés 3 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 17 mai 2012
22 nov. 2009 à 12:03
La gestion de fonctions est un peu plus sportive mais réalisable en réfléchissant un peu
0
Rejoignez-nous