Mathématiques et algorithmique : la dichotomie pour encadrer une solution de f(x)=0
Exercice d’application (D’après sujet Bac Tunisien, Section Math, Session principale 2010)
Soit la fonction f définie sur 0, par : f ( x) ln x x ln x x .
On désigne par (Cf) sa courbe représentative selon un repère orthonormé O, i, j .
1) Montrer que (Cf) coupe l’axe des abscisses en deux points d’abscisses respectives x1 et x2 telles
que : 0.4 x1 0.5 et 3 x2 4
2) Etablir un programme écrit en Turbo Pascal qui permettra de déterminer un encadrement d’amplitude
10-6 pour chacune de ces deux solutions.
Solution proposée
Program Encadrement_Solution;
uses wincrt;
var a,b,m:real;
function f(x:real):real;
begin
f:=Ln(x)-x*Ln(x)+x;
end;
Begin
write('Entrez la borne inférieure a : a= ');
readln(a);
write('Entrez la borne supérieure b : b= ');
readln(b);
repeat
m:=(a+b)/2;
if f(m)*f(a)<0 then b:=m else a:=m;
until b-a<=1E-06;
a:=a*1E+06;
a:=Trunc(a);
a:=a*1E-06;
writeln('a= ',a);
b:=b*1E+06;
b:=Trunc(b);
b:=b*1E-06;
writeln('b= ',b);
writeln(a,'<x2<',b)
End.
Remarque:
Pour l’encadrement de chaque solution, entrer les bornes de l’intervalle de départ (Question 1) et dans
l’avant-dernière ligne du programme, rectifier selon le cas : x1 ou x2.
Mars 2015 Hédi Abderrahim Page 1