[PDF] Méthode Horner - Free



Previous PDF Next PDF







Méthode Horner - Free

Appliquer cet algorithme avec les polynômes suivants f(x) = 4x3 −8x2 −7x−1 g(x) 6 Avec python def Horner(C,x): n=len(C) Q=C[0] for k in range(1,n): Q=Q



Algorithms and Data Structures - Examples

•Python Horner’s Rule Ancient Chinese Wisdom •William George Horner - 1819



Polynômes - Lycée privé Sainte-Geneviève

p(a) ou polyval(p,a) évalue le polynôme p au point a (en utilisant l'algorithme d'Horner) 2 Algorithme de Horner Soient a 2K et P = Xn k=0 b kX k On souhaite calculer P(a) Naïvement, on calcule les puissances de a, on multiplie les résultats par les coe cients b k puis on additionne le tout Combien



L’algorithme de Hörner - ACrypTA

Cet algorithme effectue N tours de boucle, chaque boucle coûtant une multiplication par 2 et une addition Ici, N représente le nombre de bits de S, c’est-à-dire la taille deS L’algorithme coûte O(N) opérations élémentaires 1 3 Généralisation Cet algorithme s’adapte immédiatement à toute écriture polynomiale de la forme : S



CS 4310 HOMEWORK SET 1

Horner’s rule? 2 Write pseudocode to implement the naive polynomial-evaluation algorithm that computes each term of the polynomial from scratch What is the running time of this algorithm? How does it compare to Horner’s rule? 3 Prove that the following is a loop invariant for the while loop in lines 3-5



Polynomials and the Fast Fourier Transform (FFT)

•Using Horner’s method, ????-point evaluation takes time Θ(????2) 9 *0,1,1,0,2,5,3,22+ Point-Value Representation •The inverse of evaluation is called interpolation –determines coefficient form of polynomial from point-value representation –For any set * 0, 0, 1, 1, , −1, −1+ of ???? point-



Genetic Algorithms: Theory and Applications

works and H Horner’s paper on his C++ GP kernel [29] ¨ I would like to thank all the students that attended my lectures on ge-netic algorithms so far, for contributing much to these lecture notes with their vivid, interesting, and stimulating questions, objections, and discus-sions



TP PYTHON - 10 Les fonctions polynomiales, c’est la classe

TP PYTHON - 10 6 [Qu 7] 1) Montrer que s’il existe un polynôme Tn vérifiant la propriété (1) alors il est unique 2) On définit la suite (Tn)n 0 par : T 0 = 1, T 1 = X et pour tout n 1, T



AES-GCM for Efficient Authenticated Encryption Ending the

Ciphers in use in SSL/TLS connections S Gueron RWC 2013 4 ASE256-SHA-1 44 AES128-SHA-1 36 RC4-MD5-128 15 RC4-SHA -128 3 DES-CBC3-SHA 168



Math 375: Lecture notes

(4) length,zeros,sin,plotare built in MATLAB functions Later on we will write our own functions (5) In Matlab variables are defined when they are used

[PDF] seuil de rentabilité cours pdf

[PDF] méthode des couts variables exercices corrigés

[PDF] exercice seuil de rentabilité corrigé pdf

[PDF] levier opérationnel calcul

[PDF] représentation graphique du seuil de rentabilité

[PDF] calcul du seuil de rentabilité avec plusieurs produits

[PDF] indice de sécurité calcul

[PDF] exercice seuil de rentabilité bts

[PDF] choix d'investissement exercices

[PDF] rentabilité des investissements cours

[PDF] calcul drci+formule

[PDF] calcul de rentabilité d'un investissement industriel

[PDF] etude de rentabilité d'une entreprise

[PDF] ratio de rentabilité commerciale

[PDF] rentabilité financière d'une entreprise

Méthode Horner - Free

IMéthode Horner

1 Le principe

Prenons l"exemple deP(x) = 3x5-2x4+ 7x3+ 2x2+ 5x-3. Pour calculer P(x) le calcul classique nécessite ......multiplications et ......additions. De même si on généralise Pour calculerP(x) =anxn+an-1xn-1+···+a1x+a0 il faut ..................multiplications et ...............additions. Dem : On peut faire de nombreuses économies de calcul en suivant leschéma suivant :

P(x) =anxn+···+a2x2+a1x?

on metxen facteur+a0 anxn-1+···+a3x+a2? on metxen facteur+a1)) x+a0 = (...(((anx+an-1)x+an-2)x+an-3)...)x+a0

Ici cela donneP(x) = 3x5-2x4+ 7x3+ 2x2+ 5x-3

= (3x4-2x3+ 7x2+ 2x+ 5)x-3 Avec cette forme deP(x) il y a ......multiplications et ......additions. Dans le cas généralP(x) = (...(((anx+an-1)x+an-2)x+an-3)...)x+a0

Il y a au maximum ............multiplications et ............additions (voir moins avec les zéros).

Appliquer cet algorithme avec les polynômes suivants. f(x) = 4x3-8x2-7x-1g(x) = 4x4-23x2-15x-2

Entrées: Les coefficientsaidans l"ordre décroissant des exposants des monômes, le monôme x1

début2 n :=degré du polynôme P.3

Q :=an4

pour kallantde1ànfaire5

Q:=Q?x+an-k6

fin7 Sorties: Q qui est égal à P(x) sous la forme d"un polynôme de Horner8

Algorithme 1: Algorithme de Horner

1

Pour faire les calculs "à la main» il est plus facile de le présenter autrement. Par exemple pour

f(x) = 4x3-8x2-7x-1

4 -8 -7 -1?

???x 4x(4x-8)x((4x-8)x-7)x

4 (4x-8) (4x-8)x-7 ((4x-8)x-7)x-1

Par exemple pour calculer f(2). Calculer de même pourf(3),P(2). f4 -8 -7 -1? ???2 8 0-14

4 0-7-15

Doncf(2) =-15.

f4 -8 -7 -1? ???3 ... ... ...

Doncf(3) =......

P3 -2 7 2 5 -3?

???2 ... ... ... ... ...

DoncP(2) =......

2 Démonstration

SoitPun polynôme de degrén,x0un réel.

On cherche à déterminer un polynômeQ(x) tel queP(x) = (x-x0)Q(x) +P(x0). Qest forcément un polynôme de degrén-1 et on a : ➔P(x) =anxn+···+a1x+a0 ➔Q(x) =bn-1xn-1+···+b1x+b0. ➔P(x) = (x-x0)Q(x) +P(x0). Exprimer les coefficients deQen fonction des coefficients dePet deP(x0) (x-x0)Q(x) +P(x0) = (x-x0)(bn-1xn-1+bn-2xn-2+···+b1x+b0) =anxn+ ( )xn-1+···+ ( )x2+ ( )x+ ( ) n=...... a n-1=...... a

2=......

a

1=......

a n-1=...... b n-2=...... b1 =...... b

0=......

P(x0) =......

P anan-1...a2a1a0?

???x0... ... ... ... ... bn-1bn-2...b1b0P(x0) coefficient est bienP(x0). On a démontré l"existence et l"unicité du polynômeQ(x).

3 Expérimentation avec xcas

Ouvrer xcas et dans un environnement de programme (Alt+p) taper :

Horner(C,x):={

localQ,k,n;//les variables locales n:=size(C)-1;// Le degré du polynome P

Q:=C[0];

pourkde1jusquenfaire

Q:=(Q*x)+C[k];

fpour; retourne(Q) Compiler ce programme (F9) et dans une autre entrée tester leavec :

L:=[3,-2,7,2,5,-3]

Horner(L,2)

Horner(L,10000)

Horner(L,x)

2

4 Utilisation de cet algorithme

Nous avons démontré queP(x) = (x-x0)Q(x) +P(x0) oùQ(x) est le polynôme obtenu avec l"algo-

Six0est une racine dePalors On trouvep(x0) =......et doncP(x) =.........

Par exemple calculerf?-1

2? en complétant le tableau ci dessous.

4 -8 -7 -1?

-1

2... ... ...

Donner alors une première factorisation def(x). En déduire une factorisation "complète» def(x).

Nous allons donc modifier le programme précédent pour faire apparaitre tous les coefficients

Horner2(C,x):={

localQ,k,n; n:=size(C)-1;// Le degré du polynome P

Q:=[];// on crée une liste vide

Q[0]:=C[0];

pourkde1jusquenfaire

Q[k]:=(Q[k-1]*x)+C[k];

fpour; retourne(Q)

En utilisant cette fois le programme que nous avons crée calculerg(-2) en déduire une factorisation

deP. CalculerQ? -1 2? . En déduire une factorisation deQ(x) puis deP(x).

5 Avec une calculatrice TI

PGRM➔NEW➔HORNER

Pour afficher seulementP(x0).

Prompt X

ClrList L6

Disp ??{AN,...,A0}??

Input L6

dim(L6)-1->N

L6(1)->Q

For(K,1,N,1)

Q*X+L6(K+1)->Q

End Disp QPour afficher la liste des coefficients deQet

P(x0).

Prompt X

ClrList L6

Disp ??{AN,...,A0}??

Input L6

dim(L6)-1->N

For(K,1,N,1)

L6(K)*X+L6(K+1)->L6(K+1)

End

Disp L6

On écrira seulement le deuxième programmecar il donne la liste des coefficients deQ(x). Pour tester plus facilement le programme écrire dans la listeL1 les coefficients 4-8-7-1.

Exécuter le programme par exemple pour-0,5. Horner2➔-0.5➔L1 et vous devez obtenir 0 pour le

premier programme et pour le deuxième la liste qui est enL6 ={4-10-2 0}. On a doncP(-0.5) = 0 etP(x) = (x+ 0,5)(4x2-10x-2). On peut aussi modifier le programme pour faire afficher des fractions.

Ce programme fonctionne aussi avec des complexes.

3

6 Avec python

defHorner(C,x): n=len(C)

Q=C[0]

forkinrange(1,n):

Q=Q?x+C[k]

returnQ

P=[4,-8,-7,-1]

print(Horner(P,0)) defHorner(C,x): n=len(C)

Q=[0]?n;

Q[0]=C[0];

forkinrange(1,n):

Q[k]=Q[k-1]?x+C[k]

returnQ

P=[4,-8,-7,-1]

print(Horner(P,-0.5))

7 Correction de la démonstration

SoitPun polynôme de degrén,x0un réel.

On cherche à déterminer un polynômeQ(x) tel queP(x) = (x-x0)Q(x) +P(x0). Qest forcément un polynôme de degrén-1 et on a : ➔P(x) =anxn+···+a1x+a0 ➔Q(x) =bn-1xn-1+···+b1x+b0. ➔P(x) = (x-x0)Q(x) +P(x0). (x-x0)Q(x) +P(x0) = (x-x0)? b n-1xn-1+···+b1x+b0? +P(x0) =bn-1xn+···+b1x2+b0x-x0bn-1xn-1- ··· -x0b1x-x0b0+P(x0) =bn-1xn+ (bn-2-x0bn-1)n-1+···+ (b1-x0b2)x2+ (b0-x0b1)x-x0b0+P(x0)

On a donc par identification

?b n-1=an b n-2-x0bn-1=an-1 b

1-x0b2=a2

b

0-x0b1=a1

n-1=an b n-2=x0bn-1+an-1 b

1=x0b2+a2

b

0=x0b1+a1

P(x0) =x0b0+a0

bienP(x0).

Pour la programmation nous avons utilisé les listes [anan-1...a1a0] qui sont numérotées [p0p1p2...pn-1pn]

car les listes commencent à 0 (ou 1 pour la TI). 4quotesdbs_dbs28.pdfusesText_34