Bonjour à tous j'ai à faire un exercice plutôt poussé d'algorithmique. Il utilise le principe de dichotomie. Soit f une fonction tel que f(x)= x^4-4x-1.
L'algorithme de dichotomie permet de donner un encadrement de la solution f(x)=0 après observation de la courbe et conjecture de l'encadrement de la solution.
L'algorithme que j'ai jusqu'ici réussi à faire est le suivant :
Entrer N
A prend la valeur -1
B prend la valeur 0
Pour I allant de 1 à N faire :
M prend la valeur (A+B)/2
Si f(M)>0
Alors
M prend la valeur A
Sinon
M prend la valeur B
Fin Si
Fin pour
Afficher A, B
-Jusqu'ici tout va bien. A un moment de l'énoncé, on me demande un algorithme permettant en 10 étapes d'avoir un encadrement de la solution. C'est là que je bloque : ce que je crois c'est qu'il faut remplacer N par 10 et voilà, mais je ne suis pas sûr. Pouvez vous me le confirmer ou non ? Merci d'avance pour vos réponses.
-Il y a aussi une question à laquelle je n'arrive pas à répondre :
-On souhaite obtenir un encadrement d'amplitude donnée p de la solution. Modifier l'algorithme de façon à résoudre ce problème.
-Et enfin, on me demande de programmer et faire fonctionner un algorithme permettant d'avoir une solution à 10puissance -6 près.
J'ai programmé celui-ci :
Entrer A
Entrer B
Tant que B-A>10^-6
M prend la valeur (A+B)/2
Si f(M)multiplié par f(A)>0
Alors
A prend la valeur M
Sinon
B prend la valeur M
Fin Si
Fin Tant que
Afficher A, B
Est-il juste ?
Merci d'avance chers membres pour toutes les réponses que vous apporterez à mes questions !!
Bonjour,
Tout ça me parait pas mal.
Effectivement, en 10 étapes, c'est N=10.
Ensuite, pour un encadrement d'amplitude p, tu peux:
Commencer par demander p
Puis remplacer:
Pour I allant de 1 à N faire :
Par
E=B-A
Tant que E<p faire:
Puis remplacer:
Fin pour
Par
E=B-A
Fin tant que
Pour ta dernière question, Qu'est-ce qui doit être à 10-6 près: x ou f(x)?
Si c'est x, tu remplaces p par 10-6
Juste une remarque: Pour le test de B-A, ça marche car B>A.
En général, il est plus prudent de tester la valeur absolue de B-A...
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :