PCSI2 2010/2011 Colle Maple 6 : polynômes 1 Exercices 1. Factoriser, sur R et sur C, le polynôme P = X 4 + 2X 3 − 4X 2 − 5X − 6. Indication : si on connaît toutes les racines de P , on connaît sa factorisation... 2. Factoriser, sur C puis sur R, le polynôme P = X 4 − 2X 3 + X 2 − 2X + 1. Indication : il s’agit de repérer les racines conjuguées. On pourra utiliser allvalues. √ 3. Déterminer les réels a et b tels que le polynôme P = X 4 + aX 3 + 3X 2 + X + b admette 2 + 2i pour racine. Le factoriser alors sur C et sur R. √ 4. Déterminer les scalaires a, b, c tels que le polynôme P = X 6 + 2X 5 + aX 2 + bX + c admette une racine non nulle de multiplicité supérieure ou égale à 4. Calculer cette racine et factoriser P . 5. Déterminer le polynôme P de degré 3 vérifiant P (1) = 7, P (8) = −2 et tel que la fonction polynomiale Pe admette en 1 et en 8 un extremum local. 2 Schéma de Horner On rappelle que, pour évaluer le polynôme P = a0 + a1 X + · · · an X n au point z, la méthode de Horner consiste à écrire P (z) = a0 + z a1 + z a2 + · · · + an−2 + z(an−1 + zan ) . 1. Écrire une procédure polVersListe tel que polVersListe(P,X) renvoie la liste (coefficient constant en tête) des coefficients du polynôme P (en l’indéterminée X). Écrire la fonction inverse listeVersPol. 2. Écrire une fonction evalue telle que evalue(P,X,a) renvoie le résultat de la substitution X ← a dans le polynôme P , en utilisant le schéma de Horner. 3. Écrire une fonction divise telle que divise(P,X,a) renvoie le quotient de la division du polynôme P (en l’indéterminée X) par X − a. On utilisera à nouveau le schéma de Horner. 3 Nombre de racines réelles d’un polynôme et localisation : méthode de Sturm. Soit P un polynôme (réel) de degré n > 1. On pose P0 = P , P1 = P ′ , et tant que Pk 6= 0, on définit Pk+1 comme l’opposé du reste de la division euclidienne de Pk−1 par Pk . Ainsi, on a : P0 P1 = = .. . Q1 P1 − P2 Q2 P2 − P3 Pq−1 = Qq Pq − Pq+1 avec Pq+1 6= 0 et Pq+2 = 0. – Justifier que, si P n’a que des racines simples, alors le polynôme Pq+1 est une constante. La suite de Sturm associée à P est Sp = (P0 , P1 , . . . , Pq+1 ). Elle vérifie les conditions suivantes : – si un scalaire x vérifie Pk (x) = 0, alors Pk+1 (x) 6= 0 : en effet, Pk−1 = Qk+1 Pk+1 − Pk , donc si Pk et Pk+1 s’annulaient au point x, alors Pk−1 s’y annulerait aussi,. . .donc P0 et P1 aussi ; c’est impossible car P n’a pas de racine multiple. – si Pk (x) = 0, alors Pk−1 (x) et Pk+1 (x) (tous deux non nuls) sont de signes opposés. 1 Si x est un réel en lequel aucun des polynômes Pk ne s’annule, on note W (x) le nombre de changements de signes entre deux termes consécutifs de la suite de Sturm S(x). La fonction W permet de déterminer le nombre de racines réelles de P de la façon suivante : – Si aucun des Pk ne s’annule sur le segment [u, v], alors W (u) = W (v). – Si il existe un entier k ∈ [[0, q+1]] tel que Pk (x0 ) = 0, choisissons alors un segment [u, v] tel que x0 ∈]u, v[ et qu’aucun des Pi ne s’annule sur [u, v] \ {x0 } (ça existe, pourquoi ?). Évaluons W (u) − W (v). – si k = 0. Soit ε ∈ {−1, 1} le signe de P0 sur [u, x0 [. Alors sur [u, x0 [, S(x) = (ε, −ε, . . . ) et sur ]x0 , v], S(x) = (−ε, −ε, . . . ) (pourquoi ?). Ainsi, la contribution du polynôme P0 = P à la différence W (u) − W (v) est de 1. – si 1 6 k 6 q (k 6= q + 1 car Pq+1 est constant). Alors Pk−1 et Pk+1 ne s’annulent pas en x0 (première condition), donc pas sur [u, v], donc ont un signe constant (théorème des valeurs intermédiaires). Comme Pk s’annule en x0 , ces signes sont opposés (deuxième condition). Ainsi, sur [u, x0 [, S(x) = (. . . , ε, ε1 , −ε, . . . ) et sur ]x0 , v], S(x) = (. . . , ε, −ε1 , −ε, . . . ) : la contribution de Pk à la différence W (u) − W (v) est nulle. Finalement, si W est définie en u et v, alors W (u)− W (v) est le nombre de racines de P comprises entre u et v. Application : – Écrire une procédure Sturm penant en paramètre un polynôme P , calculant la liste [P0 , . . ., Pq+1 ]. – Écrire une procédure W à deux arguments : une liste de polynômes l et un réel a, qui évalue la liste en a puis compte le nombre de changements de signes dans cette liste évaluée. – Écrire une procédure nombreRacines à trois arguments : un polynôme P et deux réels a < b, indiquant combien le polynôme P a de racines dans l’intervalle [a, b] (on utilisera bien sûr les deux procédures précédentes). Tester sur le polynôme P = X 4 + 4X 3 + X 2 − 7X − 1. Calculer le nombre de racines réelles de P , puis localiser chacune d’elles dans un intervalle ne contenant aucune autre racine (par approximations successives cette fois). Comment déterminer des valeurs approchées des racines ? Cas d’un polynôme ayant des racines multiples (complexes) : comment le détecter grâce à la suite de Sturm ? Comment s’affranchir de cet inconvénient en se ramenant à un polynôme n’ayant que des racines simples ? Exemple : P = X 8 + 15X 7 + 73X 6 + 124X 5 + 17X 4 − 57X 3 − 6X 2 + 9X − 1. 2