|
|
|
#Projet de Massinissa Brahimi, Yacob Sadik, Ayoub El Hajam
|
|
|
|
from tkinter import *
|
|
|
|
|
|
|
|
class Expression :
|
|
|
|
def __init__(self, valeur, fils_gauche, fils_droit):
|
|
|
|
self.valeur = valeur
|
|
|
|
self.fils_droit = fils_droit
|
|
|
|
self.fils_gauche = fils_gauche
|
|
|
|
|
|
|
|
def evalue(self):
|
|
|
|
if self.valeur == 0 and fils_droit == None and fils_gauche == None:
|
|
|
|
return 0
|
|
|
|
elif self.valeur == "*":
|
|
|
|
return self.fils_gauche * self.fils_droit
|
|
|
|
elif self.valeur == "+":
|
|
|
|
return self.fils_gauche() + self.fils_droit
|
|
|
|
elif self.valeur == "-":
|
|
|
|
return self.fils_gauche - self.fils_droit
|
|
|
|
elif self.valeur == "/":
|
|
|
|
return self.fils_gauche/ self.fils_droit
|
|
|
|
elif self.valeur == "//":
|
|
|
|
return self.fils_gauche // self.fils_droit
|
|
|
|
else:
|
|
|
|
return self.valeur
|
|
|
|
|
|
|
|
def __str__(self):
|
|
|
|
"""Ayoub : je galère à la faire faut la finir"""
|
|
|
|
return self.fils_gauche , self.valeur, self.fils_droit
|
|
|
|
|
|
|
|
def npi2tree(self, lst):
|
|
|
|
return lst
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fenetre = Tk()
|
|
|
|
fenetre.configure(bg="#16c6e5")
|
|
|
|
fenetre.title("Calculatrice")
|
|
|
|
|
|
|
|
expression = Label(fenetre, text="Expression:", padx=40, pady=20)
|
|
|
|
expression.pack()
|
|
|
|
expression.configure(bg="#16c6e5")
|
|
|
|
|
|
|
|
entrée = Entry(fenetre)
|
|
|
|
entrée.pack()
|
|
|
|
|
|
|
|
bouton_calculer = Button(fenetre, text="Calculer")
|
|
|
|
bouton_calculer.configure(bg ="#e1451f")
|
|
|
|
bouton_calculer.pack()
|
|
|
|
|
|
|
|
resultat = StringVar()
|
|
|
|
resultat = Label(fenetre, textvariable=resultat, padx=40,)
|
|
|
|
resultat.configure(bg="#16c6e5")
|
|
|
|
resultat.pack()
|
|
|
|
|
|
|
|
fenetre.mainloop()
|