You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

37 lines
1.1 KiB

# 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