In [1]:
 
%pylab inline
Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.zmq.pylab.backend_inline].
For more information, type 'help(pylab)'.

Calculs de p(x) où p polynôme et x nombre réel

In [2]:
 
def evalue(a,x):
    s=0
    for i,ai in enumerate(a):
        y=1
        for j in range(i):
            y*=x
        s+=ai*y
    return s
In [5]:
 
def evalu(a,x):
    s=0
    y=1
    for i,ai in enumerate(a):
        s+=ai*y
        y*=x
        
    return s
In [6]:
 
p=[1,1,1]
print evalue(p,2)
print evalu(p,2)
7
7

Comparaison expérimentale des temps de calcul

In [8]:
 
import time 
def temps(f,L):
    tps=[]# contiendra une liste de temps de calcul
    for p in L:
        start = time.time()
        f(p,2)
        dureeCalcul=time.time() - start # dureeCalcul=temps de calcul de f(a,x)
        tps.append(dureeCalcul)
    return tps
 
X=range(100,5000,100)#  degrés des polynômes testés
    
LX=[[2]*j for j in X]  # polynôme dont tous les coeffs sont égaux à 2
 
Y=temps(evalue,LX)
 
YY=temps(evalu,LX)
 
axis([min(X),max(X),-0.05*(max(Y)-min(Y)),max(Y)])
plot(X,Y,'b*',X,YY,'r-')
show()
In [ ]: