Programmation C : Travaux Pratiques III K. El Omari – 1
Programmation C : Travaux Pratiques III
2`eme Ann´ee IUT GTE, UPPA
Z´eros de fonctions
On se propose de d´evelopper des programmes pour le calcul des racines r´eelles de l’´equation
f(x) = 0, o`u fest une application IR IR. Il s’agit de trouver le z´ero (unique) de cette fonction
dans un intervalle [a,b].
Cr´eer un programme pour tracer une fonction entre deux bornes aet b.
Cr´eer un programme pour r´esoudre f(x) = 0 sur un intervalle [a,b] en utilisant :
l’algorithme de bissection (ou de dichotomie) ;
l’algorithme de Newton-Raphson ;
l’algorithme de la s´ecante
et l’algorithme de la fausse position.
Introduisez des v´erifications (s´ecurit´es) des donn´ees de l’utilisateur, et pr´esentez les r´esultats, de
fa¸con soign´ee, en les comparant `a la solution exacte.
Afin de pr´evil´egier la modularit´e, programmez chaque algorithme dans une fonction s´epar´ee.
Proposer des options suppl´ementaires :
Menu utilisateur
choix d’une m´ethode ou comparaison des trois
– ...
Etudier les fonctions :
f(x) = x33x23x35 dans [0 , 7]
f(x) = exp(10x)1
exp(10x)+10,5 dans [0 , 1]
f(x)=(x0,5)20,001 dans [0 , 1] et dans [0,5 , 1]
Annexe : Algorithmes
M´ethode de dichotomie
1. A partir d’un intervalle [a,b] (f(a)·f(b)<0)
2. c=a+b
2
3. si f(a)·f(c)<0 : b=c
sinon : a=c
4. si |ab|>  : revenir `a l’´etape 2
sinon la solution est : ?
cette m´ethode peut ˆetre lente mais elle reste efficace.
Programmation C : Travaux Pratiques III K. El Omari – 2
M´ethode de Newton-Raphson
1. On part d’un point aau voisinage du z´ero recherce (ex : milieu de l’intervalle)
2. ∆ = f(a)
f0(a)
3. si ||>  :a=a+ ∆ : retour ´etape 2
sinon : la solution est a
cette m´ethode est assez rapide mais elle suppose la connaissance de la d´eriv´ee f0, la m´ethode suivante
est moins rapide mais elle n’a pas cette contrainte.
M´ethode de la s´ecante
Ici on remplace f0(xk) par son approximation f(xk)f(xk1)
xkxk1
1. On part de deux points x0et x1au voisinage du z´ero recherce (ex : a et b)
2. c=af(a)ba
f(b)f(a)
3. err =|ca|
4. a=b,b=c
5. si err >  : retour ´etape 2
sinon : la solution est c
les m´ethodes de Newton-Raphson et de la s´ecante peuvent diverger. La m´ethode suivante est une
variante de la s´ecante avec une certaine pr´ecaution pour consolider la convergence.
M´ethode de la fausse position
1. On part de deux points x0et x1au voisinage du z´ero recherce (ex : a et b)
2. c=af(a)ba
f(b)f(a)
3. si f(a)·f(c)<0 : err =bc,b=c
sinon : err =ac,a=c
4. si |err|>  : retour ´etape 2
sinon : la solution est c
1 / 2 100%