Browse Source

ajout de puissance

master
manon 1 month ago
parent
commit
c015a8ac44
  1. 5
      oui.py

5
oui.py

@ -25,6 +25,7 @@ class Expression:
else: else:
droite_val = 0 droite_val = 0
#Les opérations possibles : addition, soustraction, mutliplication, division, puissance.
if self.val_racine == '+': if self.val_racine == '+':
return gauche_val + droite_val return gauche_val + droite_val
elif self.val_racine == '-': elif self.val_racine == '-':
@ -33,6 +34,8 @@ class Expression:
return gauche_val * droite_val return gauche_val * droite_val
elif self.val_racine == '/': elif self.val_racine == '/':
return gauche_val / droite_val return gauche_val / droite_val
elif self.val_racine == '^':
return gauche_val ** droite_val
else : else :
raise ValueError ("Cette commande ne peut pas être effectuer") raise ValueError ("Cette commande ne peut pas être effectuer")
@ -51,7 +54,7 @@ class Expression:
pille = Pile () pille = Pile ()
for element in lst: for element in lst:
# Si c'est un opérateur (+, -, * ou /), on crée un nœud opérateur # Si c'est un opérateur (+, -, * ou /), on crée un nœud opérateur
if element in ('+', '-', '*', '/'): if element in ('+', '-', '*', '/','^'):
droit = pille.depiler() droit = pille.depiler()
gauche = pille.depiler() gauche = pille.depiler()
pille.empiler(Expression(element, gauche, droit)) # Créer un nouvel arbre et empiler pille.empiler(Expression(element, gauche, droit)) # Créer un nouvel arbre et empiler

Loading…
Cancel
Save