Ce script permet de calculer une équation du second degré de la forme ax2 + bx +c = 0, avec n’importe quelle valeur d’a, b, c et affiche aussi la valeur de delta. Il utilise aussi les racines évidentes.
from math import * def racine_evidente(): r1 = a*((-2)**2)+b*(-2)+c r2 = a*((-1)**2)+b*(-1)+c r3 = a*(1**2)+b*1+c r4 = a*(2**2)+b*2+c if r1 == 0 or r2 == 0 or r3 == 0 or r4 == 0 : if r1 == 0 : x1 = -2 print("x1 = -2 (racine évidente)") x2 = (-b/a)-x1 print("x2 = (-b/a)-x1 =",x2) elif r2 == 0 : x1 = -1 print("x1 = -1 (racine évidente)") x2 = (-b/a)-x1 print("x2 = (-b/a)-x1 =",x2) elif r3 == 0 : x1 = 1 print("x1 = 1 (racine évidente)") x2 = (c/a)/x1 print("x2 = (c/a)/x1 =",x2) elif r1 == 0 : x1 = 2 print("x1 = 2 (racine évidente)") x2 = (c/a)/x1 print("x2 = (c/a)/x1 =",x2) if r1 != 0 and r2 != 0 and r3 != 0 and r4 != 0 : print("On ne peut pas utiliser les racines évidentes pour résoudre le polynôme.\n") print("Il faut donc utiliser la méthode classique :") polynome_de_degre_deux() input() def polynome_de_degre_deux(): delta = b**2-4*a*c print("delta =",delta) if a == 0 and b != 0 : x = -c/b print("L'équation a pour solution : x =", x) elif a == 0 and b == 0 : if c == 0 : print("L'équation admet une infinité de solutions.") else : print("L'équation n'admet pas de solutions.") else : if delta < 0 : print("Le trinôme n'admet pas de racine réelle.") if delta == 0 : x0 = -b/(2*a) print("Le trinôme admet une racine réelle.") print("La valeur de cette racine est : x0 =", x0) if delta > 0 : x1 = (-b-sqrt(delta))/(2*a) x2 = (-b+sqrt(delta))/(2*a) print("Le trinôme admet deux racines réelles.") print("Les valeurs des deux racines est : x1 =", x1 ,"et x2 =", x2) input() print("\n") print("Ce script permet de résoudre une équation de degré 2") print("----------------- VALEURS A ENTRER -----------------") print("\n") a = float(input("Veuillez entrer la valeur de a = ")) b = float(input("Veuillez entrer la valeur de b = ")) c = float(input("Veuillez entrer la valeur de c = ")) print("\n") print("On essaie d'abord de résoudre l'équation avec les racines évidentes.\n") racine_evidente()