cs_anouarus
Messages postés1Date d'inscriptionlundi 18 octobre 2004StatutMembreDernière intervention14 décembre 2005
-
14 déc. 2005 à 20:49
kenny76
Messages postés5Date d'inscriptionjeudi 5 février 2004StatutMembreDernière intervention15 décembre 2005
-
15 déc. 2005 à 12:21
Salut je suis un débutant en informatique , j'ai un projet mais c'est urgent.
SVP, un programme qui lit et evalue une expréssion arithmétique qui est formé de varaible constantes, nombre et la transforme en Arbre Binaire.
C'est URGENT
kenny76
Messages postés5Date d'inscriptionjeudi 5 février 2004StatutMembreDernière intervention15 décembre 2005 15 déc. 2005 à 12:21
C'est assez simple si ça doit etre rudimentaire: tu as ton expression du type 95 + 4 * 5
Tu lis ton expression: si c'est un nombre, tu continue de lire jusqu'à tomber sur un caractère du type */+-= (tu auras alors avec mon exemple le premier chiffre 95), une fois le caractère trouvé, tu as presque déjà fini! il te suffit de créer le premier noeud de ton arbre avec ton premier opérateur, de créer un fils gauche avec le nombre que tu as récuppéré et ensuite de créer un fils droit avec le résultat d'un nouvel appel à ta fonction(avec comme paramètre le reste de ton expression, ici 4*5. Le reste se fera tout seul. Voici le déroulement au cas où tu ne verait pas bien...
+
/
95
---appel à: fonction(4*5) :
*
/
4
--- appel à fonction(5) retourne 5
(j'avais oublié, il faut que tu place le cas d'arrêt ici: si chiffre tout seul alors return chiffre)
On a alors recursivement
*
/ \
4 5
puis
+
/ \
95 *
/ \
4 5
Ensuite pour évaluer cette expression tu n'as qu'à la lire en profondeur d'abord et tu réobtiendra la forme arithmétique