Arbre binaire

cs_anouarus Messages postés 1 Date d'inscription lundi 18 octobre 2004 Statut Membre Dernière intervention 14 décembre 2005 - 14 déc. 2005 à 20:49
kenny76 Messages postés 5 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 15 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

1 réponse

kenny76 Messages postés 5 Date d'inscription jeudi 5 février 2004 Statut Membre Dernière intervention 15 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

Voilà j'espère t'avoir aidé
0
Rejoignez-nous