• Aucun résultat trouvé

2 Représentation des polynômes

N/A
N/A
Protected

Academic year: 2022

Partager "2 Représentation des polynômes"

Copied!
2
0
0

Texte intégral

(1)

Informatique tronc commun TP 8

10 janvier 2014

Note : après la séance, vous devez rédiger un compte-rendu de TP et le faire parvenir à votre enseignant, au plus tard une semaine après la séance de TP.

Ce compte-rendu sera pour cette séance le fichier python contenant le code demandé (avant chaque question, on reportera en commentaire le numéro de la question),

Le nom de votre fichier python sera impérativement forme dupont_jean_tp08.py, où dupont est à remplacer par votre nom et jean par votre prénom, les deux étant en minuscules (même la première lettre) et sans caractère accentué.

Dans la mesure du possible, on justifiera le code demandé par des invariants.

1 Tuples

Les tuples oun-uplets en Python sont un type de données similaire aux listes. Étant donné un tuple t, on peut, avec la même syntaxe que pour les listes, accéder à son k-ième élément avec la syntaxe t[k] (comme pour les listes, la numérotation commence à0comme pour les listes et on peut désigner les éléments en comptant à partir de la fin en prenant des valeurs deknégatives), calculer son nombre d’élément avec len(t) et effectuer du tranchage.

La seule différence avec les listes est que les tuples sont non-modifiables : si on passe un tuple à une fonction, on est sûr qu’elle ne peut le modifier.

Le tuple vide (appelé aussi0-uplet) se note (). Un tuple contenant1élémentx se note (x,) (et non (x) qui désigne juste x). Un tuple à deux éléments (couple) xety se note (x,y) (ou (x, y,)).

On peut convertir une liste en tuple avec la fonctiontupleainsi on a tuple( [ 4 2 , 1 7 , 7 3 ] ) == ( 4 2 , 1 7 , 7 3 )

2 Représentation des polynômes

Le but est de représenter les polynômes en Python.

On dira qu’un tuplet représente le polynôme P si et seulement si on a

P =

len(t)

X

k=0

t[k]Xk

Un polynômeP a donc une infinité de représentations.

On dira qu’un tuplet est la représentation canonique deP si c’est la plus courte représentation de P. En particulier, la représentation canonique du polynôme nul est le0-uplet ().

On désire écrire des fonctions qui soient rigoureuses sur ce qu’elles produisent mais tolérantes sur ce qu’elles acceptent. Autrement dit :

1

(2)

1. Toutes les fonctions qui prennent en argument des polynômes devront accepter n’importe quelle représentation de ces polynômes.

2. Toutes les fonctions qui retournent en résultat des polynômes devront rendre uniquement des représentations canoniques.

2.1 Opérations élémentaires

1. Définir des variables globales polnul etX respectivement égales à la représentation canonique du polynôme nul et à la représentation canonique du polynômeX.

2. Définir une fonction canonise(P) prenant la représentation d’un polynôme en argument et retournant sa représentation canonique.

3. Définir une fonction coeff(P,k) prenant en argument un polynôme P et un entier naturelk et retournant le coefficient du monôme de degré k deP.

4. Définir une fonctiondegre(P) retournant le degré deP. On conviendra que le degré du polynôme nul est−1.

5. Définir une fonction somme(P,Q) prenant deux polynômes en argument et retournant leur somme.

6. Définir une fonction prodext(a,P) prenant en argument un nombre (flottant ou entier)a et un polynômeP et retournant le produit dea parP.

7. Définir une fonction prod(P,Q) prenant en argument deux polynômesP etQ et retournant leur produit.

8. Définir une fonction puiss(P,n) prenant en argument un polynôme P et un entier natureln et retournant Pn.

2.2 Division

1. Définir une fonction division(P,D) retournant le couple (Q, R) du quotient et du reste de la division de P parD

2.3 Recherche des zéros d’un polynôme

1. Définir une fonctionderive(P) prenant en argument un polynômePet retournant son polynôme dérivé P0.

2. Définir une fonction evaluation(P,x) prenant en argument un polynôme P et un entier ou flottant xet retournant la valeur P(x) de Pen x.

3. Écrire une fonction racines2(P) prenant un polynôme de degré 2 supposé avoir deux racines distinctes et retournant le couple de ses racines (dans l’ordre croissant)

4. Écrire une fonction racines3(P) prenant en argument un polynôme de degré 3 supposé avoir trois racines réelles distinctes et un coefficient dominant strictement positif et retournant le triplet de ces trois racines (dans l’ordre croissant), à10−6 près.

En notant (α, β, γ) les trois racines deP, avecα < β < γ, on pourra remarquer que P0 a alors nécessairement deux racines réelles bet cdistinctes avecα < b < β < c < γ, étudier le tableau de variation et remarquer qu’on peut trouver une valeur a < b telle que P(a)< 0, une valeur d > c telle que P(d)>0 et trouver alors α,β etγ par dichotomie.

2

Références

Documents relatifs

Nous allons le montrer

Forme canonique d'une fonction polynôme de degré 2.. Une écriture différente pour

Le discriminant

Si deux grandeurs sont représentées graphiquement dans un repère par des points alignés avec l'origine du repère, alors elles sont proportionnelles.. Un tableau représente

[r]

Une fonction polynomiale à coefficients réels, de R dans R, possède un DL n (a) de partie principale nulle pour une valeur a ∈ R fixée et pour un entier n supérieur ou égal au

En prenant soin de distinguer les cas |α| 2 = 0 et |α| 2 6= 0, on démontre (exercice) en étudiant les coefficients (a priori complexes) du polynôme Q que ceux-ci sont en fait des

Il y a deux manières possibles de le faire, dont une que l'on ne peut pas encore correctement justier en