def boucle(): expr = lecture_expr() while len(expr) > 0: e = expression("{" + expr + "}") print((e.valeur())) print() expr = lecture_expr()
def tests_automatiques(): e = expression("{ (3 + 4) * 5 ^ (1 + 1) - 7 }") print("Exemple de calcul :", e) print(e.valeur(), '\n') # donne 168 e = expression("{ 2 ^ 3 ^ 2 ^ 2 }") print("Exemple de calcul :", e) print(e.valeur(), '\n') # donne 2417851639229258349412352 e = expression("{ ( 9 + 1 ) * ( 7 + 2 * 5 ) }") print("Exemple de calcul :", e) print(e.valeur(), '\n') # donne 170 e = expression("{ 3/7 - 2/7 : ( 5 : 14 ) }") print("Exemple de calcul :", e) print(e.valeur(), '\n') # donne -13/35
def exemples(self): """ tests automatiques """ print("*** quelques exemples ***\n") e = expression("(3 + 4) * 5 ^ (1 + 1) - 7") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne 168 e = expression("2 ^ 3 ^ 2 ^ 2") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne 2417851639229258349412352 e = expression("-(5 - 1) : 5^3 + ( 9 + 1 ) * ( 7 + 2 * 5 )") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne 169.968 e = expression("3/7 - 2/7 : ( 5 : 14 )") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne -13/35 e = expression("((a + b)/2)^2 - ((a - b)/2)^2") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne a*b e = expression("(x+2/3)^(-3)") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne 27/(27*x^3 + 54*x^2 + 36*x + 8) e = expression("(8*(16/10)*10^8)/((4/10)*10^10)") print("exemple de calcul :", e.get_source()) print(e, '\n') # donne 0.32
def solve(comb): if len(comb) == 1 and comb[0].eval() and abs(comb[0].eval() - 24) < 0.001: return comb[0] size = len(comb) for i in range(size): for j in range(size): if i == j: continue base = remove(comb, i, j) for op in (plus, minus, times, divide): new_item = expression(op, (comb[i], comb[j])) result = solve(base + (new_item, )) if result: return result return None
def boucle(self): """ boucle d'evaluation """ print("*** boucle interactive ***") print() print( " Entrer une expression mathematique a evaluer (ou laisser vide pour" ) print(" finir) puis valider.") print() entree = self.lecture() while len(entree) > 0: e = expression(entree) print(e) print(str(e) + "\n\n", file=self.__fichier) print() entree = self.lecture() print() self.__fichier.close()
def get_file(number): try: number = int(number) except ValueError: get_file(get_input("")) if number == 1: result = life_path() elif number == 2: result = expression() elif number == 3: result = personal_year() elif number == 4: result = challenge() else: get_file(get_input("")) if not isinstance(result, list): print(bcolors.BOLD + str(result) + bcolors.ENDC) return for r in result: print(bcolors.BOLD + str(r) + bcolors.ENDC)
def __init__(self,true,false): self.trueNode = true self.falseNode = false self.name = "dc" self.expression = expression()