Extension du script polynomial avec le cas delta<0 et une fonction canon qui donne la forme canonique.
from math import * # roots(a,b,c) computes the solutions of the equation a*x**2+b*x+c=0 def roots(a,b,c): delta = b*b-4*a*c if delta == 0: return -b/(2*a) elif delta > 0: x_1 = (-b-sqrt(delta))/(2*a) x_2 = (-b+sqrt(delta))/(2*a) return x_1, x_2 else: x_1=(-b-1j*sqrt(-delta))/(2*a) x_2=(-b+1j*sqrt(-delta))/(2*a) return x_1,x_2 def canon(a,b,c): x_s=-b/(2*a) y_s=-(b**2-4*a*c)/(4*a) print("%f*(x+%f)**2+%f"%(a,-x_s,y_s))