Ici, f désigne une fonction strictement croissante sur et vérifiant :
Nous allons créer un algorithme associant à une telle fonction f l'unique solution (notée x0) sur de l'équation
Cet algorithme procède « par dichotomie », de la manière suivante.
Admettons que l'on connaisse deux réels a0 et b0 tels que et
On sait, d'après le corollaire du théorème des valeurs intermédiaires, que
1re étape : On veut situer x0 par rapport au centre de l'intervalle
Si nécessairement
On pose alors
et
si nécessairement
On pose alors
et
Alors
2e étape : On veut situer x0 par rapport au centre de l'intervalle [a1 b1].
Si nécessairement
On pose alors
et
si nécessairement
On pose alors
et
Alors
On continue jusqu'à obtenir un encadrement à la précision souhaitée. Dès que on s'arrête : l'encadrement
obtenu est bien un encadrement à e près.
1. Soit f la fonction définie sur par
a. Vérifier que f est strictement croissante sur et que
et
b. Calculer et
On pose
et
c. Déterminer l'intervalle
d. Continuer jusqu'à obtenir un encadrement à 0,2 près de x0.
2. Dans Algobox, entrer la fonction f (= F1). Écrire un algorithme qui, aux réels a et b, associe un encadrement à 10-2 près de x0.
a, b et c prendront successivement les valeurs a0, b0, c0 a1, b1, c1 … |
3. Tester l'algorithme avec la fonction avec
et
1. a. Pour tout x réel, donc f est strictement croissante sur
De plus, donc
et
donc :
b.
c. avec
et
d. l
Comme on continue.
Comme on continue.
Comme on continue.
Comme on s'arrête.
Donc, x0 est compris entre 2,34375 et 2,5.
2.
VARIABLES
a EST_DU_TYPE NOMBRE
b EST_DU_TYPE NOMBRE
c EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
LIRE a
LIRE b
TANT_QUE (b-a>0.01) FAIRE
DEBUT_TANT_QUE
c PREND_LA_VALEUR (a+b)/2
SI (F1(c)==0) alors
DEBUT_SI
AFFICHER “x0 =”
AFFICHER c
FIN_SI
SINON
DEBUT_SINON
SI (F1(c)
DEBUT_SI
a PREND_LA_VALEUR c
FIN_SI
SINON
DEBUT_SINON
b PREND_LA_VALEUR c
FIN_SINON
FIN_SINON
FIN_TANT_QUE
AFFICHER “x0 est compris entre”
AFFICHER a
AFFICHER “et”
AFFICHER b
FIN_ALGORITHME
On obtient un encadrement à 10-2 près de x0 :
*** Algorithme lancé***
x0 est compris entre 2.4414063 et 2.4511719
***Algorithme terminé***
3. On obtient :
*** Algorithme lancé***
x0 est compris entre 1.7382813 et 1.7480469
***Algorithme terminé***