Fiche de cours

Le calcul approché de solutions d'équations avec Python

Lycée   >   Terminale   >   Mathématiques   >   Le calcul approché de solutions d'équations avec Python

  • Fiche de cours
  • Quiz et exercices
  • Vidéos et podcasts
Objectif

Écrire un programme Python permettant de calculer une valeur approchée de la solution d’une équation.

Points clés
  • Pour déterminer une valeur approchée de solutions d’équations du type f(x) = 0, on peut utiliser trois méthodes : la méthode par dichotomie, la méthode de la sécante et la méthode de Newton.
  • Exemple de programme Python traduisant la méthode par dichotomie :
  • Exemple de programme Python traduisant la méthode de la sécante :
  • Exemple de programme Python traduisant la méthode de Newton :
Pour bien comprendre
  • Résoudre des équations.
  • Connaitre le théorème des valeurs intermédiaires.

Il arrive que certaines équations ne puissent pas être résolues algébriquement. Après avoir prouvé qu’elles admettent des solutions en utilisant, par exemple, le théorème des valeurs intermédiaires, il est alors utile d’avoir des méthodes pour déterminer une approximation numérique des solutions recherchées.

Les méthodes présentées servent à trouver une approximation numérique d’équations de la forme f(x) = 0 ou se ramenant à une équation de la forme f(x) = 0 sur un intervalle [a ; b], avec a et b deux nombres réels et f une fonction monotone définie sur [a ; b].

1. La méthode par dichotomie
a. Principe

On considère une fonction f définie sur un intervalle I.
On cherche à résoudre l’équation f(x) = 0 sur un intervalle [a ; b] après avoir prouvé que la fonction f est monotone et s’annule sur cet intervalle.
On se fixe une précision e (par exemple à 10–2).
Pour cela, on utilise l’algorithme suivant.

  1. On partage l’intervalle [a ; b] en deux intervalles [a ; m] et [m ; b] avec .
  2. On choisit l’intervalle qui contient la solution pour cela, on calcule f(a) × f(m) :
    • si f(a) × f(m) ⩽ 0 cela signifie que f(a) et f(m) sont de signes contraires, donc la solution est dans l’intervalle [a ; m] ;
    • sinon la solution est dans l’intervalle [m ; b].
  3. On reprend l’étape 1 tant que (b – a) est supérieur à la précision e fixée. Pour cela, on remplace l’intervalle [a ; b] par celui qui contient la solution.
Exemple
On considère la fonction f définie sur [0 ; 1] par f(x) = ex – 2. Déterminons une valeur approchée à 0,1 près de la solution de l’équation f(x) = 0.
Étape [a ; b] m Remarques Graphique
1 [0 ; 1] 0,5 f(a) × f(m) > 0
La solution est donc dans l’intervalle [0,5 ; 1].
e = 1  0,5 = 0,5 > 0,1, donc on continue.
2 [0,5 ; 1] 0,75 f(a) × f(m) < 0
La solution est donc dans l’intervalle [0,5 ; 0,75].
e = 1  0,5 = 0,25 > 0,1, donc on continue.
3 [0,5 ; 0,75] 0,625 f(a) × f(m) < 0
La solution est donc dans l’intervalle [0,625 ; 0,75].
e = 0,625  0,75 = 0,125 > 0,1 donc on continue.
4 [0,625 ; 0,75] 0,6875 f(a) × f(m) > 0
La solution est donc dans l’intervalle [0,6875 ; 0,75].
e = 0,75  0,6875 = 0,065 < 0,1, donc on s’arrête.
La valeur approchée de la solution à 0,1 près est donc environ égale à 0,7.

Pour résumer, cet algorithme s’écrit en langage naturel de la façon suivante :

Fonction dicho(a, b, e)
   Tant que b–a > e
      m←(a+b)/2
      Si f(a) × f(m)<0 alors
         b ← m
      Sinon
         a ← m
      Fin Si
   Fin Tant que
   Retourner (a+b)/2
Fin Fonction
b. Programme
Programme Python Commentaires

On importe la bibliothèque math.

On déclare la fonction f.
On écrit avec la commande return l’expression de la fonction.

On traduit en langage Python l’algorithme expliqué dans la partie 1.a.

Exemple
On reprend l’exemple de la fonction f définie sur [0 ; 1] par f(x) = ex – 2. Pour trouver la valeur approchée à 0,1 près de la solution de l’équation f(x) = 0 dans l’intervalle [0 ; 1], on saisit dans la console :
La solution de l’équation f(x) = 0 à 0,1 près est donc 0,7.
2. La méthode de la sécante
a. Principe

On considère une fonction f définie sur un intervalle I.
On cherche à résoudre l’équation f(x) = 0 sur un intervalle [a ; b] après avoir prouvé que la fonction f est monotone et s’annule sur cet intervalle.
On se fixe une précision e (par exemple à 10–2).
Pour cela, on utilise l’algorithme suivant.

  1. On définit deux points A et B de coordonnées A(a ; f(a)) et B(b ; f(b)).
  2. On calcule l’équation de la droite (AB), celle-ci vaut : .
    La droite (AB) est appelée la sécante à la courbe représentative de la fonction f.
  3. On calcule l’abscisse c du point d’intersection C de la sécante (AB) avec l’axe des abscisses.
    On obtient : .
  4. Tant que |c – a| > e, on recommence à partir de l’étape 1 avec a = c.
Exemple
On considère la fonction f définie sur [0 ; 1] par f(x) = ex – 2.
Déterminons une valeur approchée à 0,1 près de la solution de l’équation f(x) = 0.
Étape [a ; b] m Remarques Graphique
1 [0 ; 1]  0,58 |c – a| ≈ 0,58  0,1, donc on continue.
2 [0,58 ; 1]  0,68 |c – a| ≈ 0,09 < 0,1, donc on s'arrête.
La valeur approchée de la solution de l'équation f(x) = 0 à 0,1 près est donc environ égale à 0,7.

Pour résumer, cet algorithme s’écrit en langage naturel de la façon suivante :

Fonction secante(a, b, e)
   c ← b
   Tant que |a–c| > e
      c ← a
      a ← (a*f(b)–b*f(a))/(f(b)–f(a))
   Fin Tant que
   Retourner a
Fin Fonction
b. Programme Python
Programme Python Commentaires

On importe la bibliothèque math.

On déclare la fonction.
On écrit avec la commande return l’expression de la fonction.

On traduit en langage Python l’algorithme expliqué dans la partie 2.a.

Exemple
On reprend l’exemple de la fonction f définie sur [0 ; 1] par f(x) = ex – 2. Pour trouver la valeur approchée à 0,1 près de la solution de l’équation f(x) = 0 dans l’intervalle [0 ; 1], on saisit dans la console :
La solution à 0,1 près de l’équation f(x) = 0 est donc 0,7.
3. La méthode de Newton
a. Principe

On considère une fonction f définie sur un intervalle I.
On cherche à résoudre l’équation f(x) = 0 sur un intervalle [a ; b] après avoir prouvé que la fonction f est monotone et s’annule sur cet intervalle.
On se fixe une précision e (par exemple à 10–2).
Pour cela, on utilise l’algorithme suivant.

  1. On définit deux points A et B de coordonnées A(a ; f(a)) et B(b ; f(b)).
  2. On calcule l’équation de la tangente (d) à la courbe représentative de f au point B : y = f(b)(x – b) + f(b).
  3. On calcule l’abscisse c du point d’intersection C de la tangente (AB) avec l’axe des abscisses. On obtient : .
  4. Tant que |c – b| > e, on recommence à partir de l’étape 1 avec b = c.
Exemple
On considère la fonction f définie sur [0 ; 1] par f(x) = ex – 2.
Déterminons une valeur approchée à 0,1 près de la solution de l’équation f(x) = 0.
Étape [a ; b] m Remarques Graphique
1 [0 ; 1]  0,74 |c – b| ≈ 0,26  0,1, donc on continue.
2 [0 ; 0,74]  0,69 |c – b| ≈ 0,05 < 0,1, donc on s'arrête.
La valeur approchée de la solution à 0,1 près est environ égale à 0,7.

Pour résumer, cet algorithme s’écrit en langage naturel de la façon suivante :

Fonction tangente(a, b, e) :
   c ← a
   Tant que |b–c| > e
      c ← b
      b ← b – f(x)/fprim(x)
   Fin Tant que
   Retourner b
Fin Fonction
b. Programme Python
Programme Python Commentaires

On importe la bibliothèque math.

On déclare la fonction f.
On écrit  avec la commande return l’expression de la fonction.

On déclare de la même façon la fonction dérivée.

On traduit en langage Python l’algorithme expliqué dans la partie 3.a.

Exemple
On reprend l’exemple de la fonction f définie sur [0 ; 1] par f(x) = ex – 2. Pour trouver la valeur approchée à 0,1 près de la solution de l’équation f(x) = 0 dans l’intervalle [0 ; 1], on saisit dans la console :
La solution à 0,1 près de l’équation f(x) = 0 est donc 0,7.

Évalue ce cours !

 

Des quiz et exercices pour mieux assimiler sa leçon

La plateforme de soutien scolaire en ligne myMaxicours propose des quiz et exercices en accompagnement de chaque fiche de cours. Les exercices permettent de vérifier si la leçon est bien comprise ou s’il reste encore des notions à revoir.

S’abonner

 

Des exercices variés pour ne pas s’ennuyer

Les exercices se déclinent sous toutes leurs formes sur myMaxicours ! Selon la matière et la classe étudiées, retrouvez des dictées, des mots à relier ou encore des phrases à compléter, mais aussi des textes à trous et bien d’autres formats !

Dans les classes de primaire, l’accent est mis sur des exercices illustrés très ludiques pour motiver les plus jeunes.

S’abonner

 

Des quiz pour une évaluation en direct

Les quiz et exercices permettent d’avoir un retour immédiat sur la bonne compréhension du cours. Une fois toutes les réponses communiquées, le résultat s’affiche à l’écran et permet à l’élève de se situer immédiatement.

myMaxicours offre des solutions efficaces de révision grâce aux fiches de cours et aux exercices associés. L’élève se rassure pour le prochain examen en testant ses connaissances au préalable.

S’abonner

Des vidéos et des podcasts pour apprendre différemment

Certains élèves ont une mémoire visuelle quand d’autres ont plutôt une mémoire auditive. myMaxicours s’adapte à tous les enfants et adolescents pour leur proposer un apprentissage serein et efficace.

Découvrez de nombreuses vidéos et podcasts en complément des fiches de cours et des exercices pour une année scolaire au top !

S’abonner

 

Des podcasts pour les révisions

La plateforme de soutien scolaire en ligne myMaxicours propose des podcasts de révision pour toutes les classes à examen : troisième, première et terminale.

Les ados peuvent écouter les différents cours afin de mieux les mémoriser en préparation de leurs examens. Des fiches de cours de différentes matières sont disponibles en podcasts ainsi qu’une préparation au grand oral avec de nombreux conseils pratiques.

S’abonner

 

Des vidéos de cours pour comprendre en image

Des vidéos de cours illustrent les notions principales à retenir et complètent les fiches de cours. De quoi réviser sa prochaine évaluation ou son prochain examen en toute confiance !

S’abonner

Découvrez le soutien scolaire en ligne avec myMaxicours

Le service propose une plateforme de contenus interactifs, ludiques et variés pour les élèves du CP à la Terminale. Nous proposons des univers adaptés aux tranches d'âge afin de favoriser la concentration, encourager et motiver quel que soit le niveau. Nous souhaitons que chacun se sente bien pour apprendre et progresser en toute sérénité ! 

Fiches de cours les plus recherchées

Mathématiques

Le calcul approché d'intégrales ou de limites de sommes avec Python

Mathématiques

Listes en Python : application aux statistiques et probabilités- Terminale- Mathématiques

Mathématiques

Listes en Python : application aux suites et aux fonctions- Terminale- Mathématiques

Mathématiques

Listes en Python : application à la géométrie plane- Terminale- Mathématiques

Mathématiques

Listes en Python : application aux ensembles

Mathématiques

Listes en Python : création et manipulation- Terminale- Mathématiques

Mathématiques

Le calcul approché de nombres remarquables avec Python

Mathématiques

L'inégalité de Bienaymé-Tchebychev

Mathématiques

Des applications de l'inégalité de Bienaymé-Tchebychev

Mathématiques

CanardMasqué présente : Les systèmes de numération