# BELLYNCK Manon # GUILLAUMIN-TORRES Ambre # COVIN Clara class Expression : def __init__ (valeur_racine, fils_gauche, fils_droit): self.valeur = valeur_racine self.gauche = fils_gauche self.droit = fils_droit def évalue (self): if self.valeur == '*': return multiplication(valeur.gauche, valeur.droit) elif self.valeur == '+': return addition(valeur.gauche, valeur.droit) def __str__ (self): """Affiche tous les nœuds de l'arbre a par un parcours DFS préfixé.""" if a is None: return parcours_dfs_infixe(a.gauche) print(a.valeur) parcours_dfs_infixe(a.droit) def multiplication (valeur.gauche, valeur.droit): """multiplie la valeur des fils gauche et droits""" if valeur.gauche == int and valeur.droit == int : return valeur.gauche * valeur.droit def addition (valeur.gauche, valeur.droit): """additionne les valeurs des fils gauche et droits""" if valeur.gauche == int and valeur.droit == int : return valeur.gauche + valeur.droit