Dichotomie





Lundi 21 avril 2008, de Emma : (...) Je prépare actuellement mes oraux de Capes et plus précisément la leçon sur les suites monotones et adjacentes, approximation d'un réel.

Pour ce qui est du plan je me suis servi de votre livre volume I mais je ne touve pas de quoi programmer quelques approximations sur ma voyage 2OO sans télécharger de nouveaux logiciels. J'aurais souhaité faire deux programmes: Un sur la dichotomie en faisant apparaître à chaque étape l'approximation et un autre permettant de calculer directement le rang nécessaire pour avoir une approximation donnée. Je n'ai jamais programmé sur ma calculatrice. je sais juste mettre dans un tableau les valeurs d'une suite. J'ai cherché sur internet mais je ne trouve pas concrètement les programmes. Merci par avance (...)

Réponse donnée par Stéphanie Ayoubi le 23 avril 2008 : Voici ce que j'avais fait sur le sujet:

1/ Ci-joint un fichier excel avec la méthode de la dichotomie,

2/Voici l'algorithme : Je prends comme exemple la résolution de l'équation : tan(x)=x+1. [a,b] est l'intervalle pour lequel on a f(a)*f(b)<0 avec f(x)=tan(x)-x-1, et p est la précision souhaitée.


dicho(a,b,p)

fa=tan(a)-a-1;

fb=tan(b)-b-1;

m=(a+b)/2;

fm=tan(m)-m-1;

tant que |b-a|>p faire

si fm*fa <0 alors

b=m;

fb=fm;

sinon

a=m;

fa=fm;

fin de si

m=(a+b)/b;

fm=tan(m)-m-1;

fin tant que


3/ voici l'implémentation sur ma calculatrice (TI-89) mais je pense que c'est le même langage sur la voyager 2000:


:dicho(a,b,p)

:Prgm

:tan(a)-a-1 -> fa

:tan(b)-b-1 -> fb

(a+b)/2 -> m

:tan(m)-m-1 -> fm

:0-> nbiter

:While abs(b-a) > p

: If fm*fa <0 Then

: m->b

: fm->fb

: Else

: m->a

: fm->fa

: EndIf

: (a+b)/2 -> m

: tan(m)-m-1 -> fm

: nbiter+1 ->nbiter

:EndWhile

:Disp nbiter,a

:EndPrgm


L'exécution de ce programme pour a=1, b=1.5 et p=0.001 donne x=1.131 solution de tan(x)=x+1 à 0.001 près.