"Décodage" Python

Fermé
BobbySkill Messages postés 2 Date d'inscription dimanche 19 août 2012 Statut Membre Dernière intervention 20 août 2012 - 19 août 2012 à 15:51
BobbySkill Messages postés 2 Date d'inscription dimanche 19 août 2012 Statut Membre Dernière intervention 20 août 2012 - 20 août 2012 à 11:19
Bonjour,

J'avais un problème à résoudre en python et il m'en a malheureusement apporté un autre . En effet , je voudrais savoir si quelqu'un pouvait me décoder ce bout de code ou me le commenté :


def P(x, coeff):
l = len(coeff)-1
return sum(n*x**(l-k) for k,n in enumerate(coeff))

def P_(x, coeff):
return reduce(operator.mul, [r.denominator * x - r.numerator for r in roots(coeff)])

def roots(coeff):
P = poly1d(coeff)
return [Fraction(i).limit_denominator(500) for i in P.r]

def factorize(coeff):
return ''.join('({}x{:+})'.format(r.denominator, -r.numerator) for r in roots(coeff))

co = [3, -7, -13, 23, -6]
print( factorize(co) )
print(P(10, co))
print(P_(10, co))


Merci !
A voir également:

2 réponses

BobbySkill Messages postés 2 Date d'inscription dimanche 19 août 2012 Statut Membre Dernière intervention 20 août 2012 2
Modifié par BobbySkill le 20/08/2012 à 11:21
En faite , voilà l'autre partie qui est au-dessus de ce code :

from numpy import poly1d
from fractions import Fraction


print ("Quel est le terme du plus haut degré ?")
DEGRER=input()
DEGRER=int(DEGRER)


print("Entrer le coefficient du 1er terme")
A=input()
A=int(A)


print ("Entrer le coefficient du 2è terme")
B=input()
B=int(B)
print ("Entrer le coefficient du 3ème terme")
C=input()
C=int(C)
print ("Entrer le coefficient du 4ème terme")
D=input()
D=int(D)
print ("Entrer le coefficient du terme indépendant")
E=input()
E=int(E)


P = poly1d([A,B,C,D,E], variable='x')


print (P.r)
print (P)
#tableau=A*r
#tableau2=B+tableau
#tableau3=tableau2*r
#tableau4=C+tableau3
#tableau5=tableau4*r
#tableau6=D+tableau5
#tableau7=tableau6*r
#tableau8=E+tableau7


La partie en commentaire "tableau" est la manière dont j'aurais voulu que mon code fonctionne , j'essaye de faire un programme qui calcule la méthode d'Horner . Malheureusement , je n'ai pas réussi à coder la partie où l'on puisse rechercher les racines d'une équation quelconque . J'ai donc demandé de l'aide et j'ai eu comme réponse mon premier post . Cependant , je n'ai ... rien compris . Je trouve que ma partie en commentaire était beaucoup plus simple mais c'est la partie " trouver les racines" ( et pouvoir l'utiliser en tant que variable par après qui est plus compliquer) . Mis en commun , le programme fonctionne mais je ne le comprends pas et utiliser un programme que je ne comprends pas me perturbe :s



Voilà , si tu as besoin d'autres détails n'hésite pas .
2
dsy73 Messages postés 9252 Date d'inscription dimanche 22 août 2010 Statut Contributeur Dernière intervention 23 octobre 2020 2 482
19 août 2012 à 20:27
Est-ce un devoir ? Peux-tu donner des détails ?
0