Déterminer un point d'intersection par méthode de dichotomie à l'aide d'un algorithmeProblème

On se propose d'étudier l'équation (1) : x^3 +1=3x.

Pour cela, on pose f(x) = x^3−3x+1 sur \mathbb{R}.

Quel est le nombre de solutions de l'équation (1) ? 

On cherche à écrire un algorithme qui détermine une valeur approchée des solutions à l'équation (1) par dichotomie. 

Cet algorithme fonctionne comme suit : 

  • On initialise un intervalle [a;b] contenant uniquement une solution de (1). 
  • On calcule le milieu de cet intervalle que l'on nomme c.
  • On calcule f(a)\times f(c) . Si cette valeur est négative, alors la solution de l'équation appartient à [a;c], donc on pose b=c.
  • Sinon la solution appartient à [c;b], donc on pose a=c.
  • On réitère ce processus n fois. 

 

L'idée derrière cet algorithme est de réduire l'intervalle autour de la solution.

Parmi les propositions suivantes, laquelle correspond à l'écriture de cet algorithme en Python ?

D'après les fonctions écrites à la question précédente, quelles sont les trois valeurs approchées des solutions de f(x)=0 ?