Professional Documents
Culture Documents
Une Classe Pour Pôlynome Creux (Exercice3)
Une Classe Pour Pôlynome Creux (Exercice3)
# Constructeur (Question 1)
def __init__ (self, poly = {}) :
if isinstance(poly, dict) :
self.__data = {k: v for k,v in poly.items() if v}
else :
raise TypeError("Poly ne peut pas etre de type {}".
↪format(type(poly)))
1
while True :
try :
coeff = float(input("Donner l ecoefficient de monome : "))
exp = int(input("Donner l'indice du coefficient : "))
if coeff !=0 and exp >=0 :
break
except ValueError :
pass
self.__data.update({exp : coeff})
else :
self.__data.update({k:v for k,v in monome.items() if v})
else :
raise TypeError("unsupported operand type(s) for +: 'PolyCreux' and␣
↪{}".format(type(other)))
2
newPoly.__data[k1 + k2] += v1*v2
return newPoly
else :
raise TypeError("unsupported operand type(s) for *: 'PolyCreux' and␣
↪{}".format(type(other)))
3
str_poly += '+ X'
elif ci > 0 :
str_poly += '+ ' + str(ci) + 'X'
elif ci == -1 :
if i == 0 :
str_poly += '-1'
else:
str_poly += '- X'
else :
str_poly += str(ci) + 'X '
if i > 1 :
str_poly += '^' + str(i)
if str_poly[:2] == '+ ' :
str_poly = str_poly[2:]
return str_poly
P1 = 0
P2 = 2.5X^3
P3 = X^7+ 4X^6+ 2X^4+ 4X^2+ 4X
[ ]:
[ ]:
[ ]:
[ ]: