teaching:progappchim:polynomes-8

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
teaching:progappchim:polynomes-8 [2012/11/16 07:09]
villersd
teaching:progappchim:polynomes-8 [2017/02/24 11:43] (Version actuelle)
villersd
Ligne 1: Ligne 1:
 ====== Polynômes : graphes de fonctions polynomiales ====== ====== Polynômes : graphes de fonctions polynomiales ======
-<sxh python; title : poly08-plot.py> +<code python poly08-plot.py> 
-#!/usr/bin/python+#!/usr/bin/env python
 # -*- coding: UTF-8 -*- # -*- coding: UTF-8 -*-
-""" écriture d'un programme pour évaluer+""" 
 +écriture d'un programme pour évaluer
 des polynomes des polynomes
 """ """
Ligne 10: Ligne 11:
  
 def polyeval(x,a): def polyeval(x,a):
-    """application de l'agorithme de Horner+    """ 
 +    application de l'agorithme de Horner
     cf. http://fr.wikipedia.org/wiki/M%C3%A9thode_de_Ruffini-Horner     cf. http://fr.wikipedia.org/wiki/M%C3%A9thode_de_Ruffini-Horner
     """     """
-    n=len(a)-1 # n = ordre du polynome +    n = len(a)-1 # n = ordre du polynome 
-    p=a[n] +    p = 0. 
-    for i in range(n-1,-1,-1): +    for i in range(n,-1,-1): 
-        p=p*x+a[i]+        p = p*x + a[i]
     return p     return p
  
-def polyscal(a,s): +def polyscal(s,a): 
-    """polynome multiplié par un scalaire s """ +    """ 
-    b=[]+    polynôme multiplié par un scalaire s 
 +    """ 
 +    b = []
     for coef in a:     for coef in a:
         b.append(coef*s)         b.append(coef*s)
Ligne 27: Ligne 31:
  
 def polyadd(a,b): def polyadd(a,b):
-    """ Addition de deux polynomes de coefficients a et b 
     """     """
-    r=a[:] # on travaille sur une copie de a pour ne pas le modifier +    Addition de deux polynomes de coefficients a et b 
-    t=b[:] # idem pour b  +    """ 
-    g=[]   # polynome somme +    r = a[:] # on travaille sur une copie de a pour ne pas le modifier 
-    n1=len(r) # ordre du premier polynome +    t = b[:] # idem pour b  
-    n2=len(t) # ordre du second polynome +    g = []   # polynome somme 
-    if n1>n2: # premier polynome de plus haut degré que le second+    n1 = len(r) # ordre du premier polynome 
 +    n2 = len(t) # ordre du second polynome 
 +    if n1 > n2: # premier polynome de plus haut degré que le second
         for i in range (n1-n2):         for i in range (n1-n2):
             t.append(0)             t.append(0)
-    elif n1<n2: # second polynome de plus haut degré que le premier+    elif n1 < n2: # second polynome de plus haut degré que le premier
          for i in range (n2-n1):          for i in range (n2-n1):
              r.append(0)              r.append(0)
Ligne 47: Ligne 52:
 # différents tests : # différents tests :
  
-absc=[] +absc = [] 
-ordo=[] +ordo = [] 
-coef=[0,9,0,-120,0,432,0,-576,0,256]   # un polynome un peu particulier +coef = [0, 9, 0, -120, 0, 432, 0, -576, 0, 256]   # un polynome un peu particulier 
-xa=-1.04+xa = -1.04
 while xa < 1.04: while xa < 1.04:
     absc.append(xa)     absc.append(xa)
     ordo.append(polyeval(xa,coef))     ordo.append(polyeval(xa,coef))
-    xa=xa+0.01+    xa = xa + 0.01
  
 plot(absc,ordo) plot(absc,ordo)
 show() show()
-</sxh>+</code>
  
 <note tip>Il s'agit à présent de créer d'autres fonctionnalités sur les polynômes !</note> <note tip>Il s'agit à présent de créer d'autres fonctionnalités sur les polynômes !</note>
  • teaching/progappchim/polynomes-8.1353046171.txt.gz
  • Dernière modification: 2012/11/16 07:09
  • de villersd