1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
| import sympy as sp
x=sp.Symbol('x')
p=64*x**6-1
list=sp.factor_list(p)
#list=sp.factor_list(sp.Poly(p)) # ne marche pas parce que les multiplications développent automatiquement
p=1
for i in range(len(list[1])) :
if list[1][i][1]==1 :
p=p*(list[1][i][0])
else :
p=p*(list[1][i][0])**list[1][i][1]
p=list[0]*p # Le coefficient du monome de plus haut degré
display(p)
for i in range(len(list[1])) :
sol=sp.solve(list[1][i][0],x)
if len(sol)==1 :
print(sol[0]," d'ordre ",list[1][i][1])
else :
print(list[1][i][0]," sans racine réelle d'ordre ",list[1][i][1])
# Pour les racines complexes
p=64*x**6-1
list=sp.factor_list(p,extension=sp.roots(p))
display(list)
p=1 # Le coefficient du monome de plus haut degré
for i in range(len(list[1])) :
if list[1][i][1]==1 :
p=p*(list[1][i][0])
else :
p=p*(list[1][i][0])**list[1][i][1]
display(list[1][i]," => ",p) # affichage pour bien vérifier l'ordre d'arrivée
p=list[0]*p
display(p)
print ("liste des racines :")
for i in range(len(list[1])) :
print(list[1][i][0]," => ",x-list[1][i][0]," d'ordre ",list[1][i][1]) |
Partager