Le calcul approché de solutions d'équations avec Python
- Fiche de cours
- Quiz et exercices
- Vidéos et podcasts
Écrire un programme Python permettant de calculer une valeur approchée de la solution d’une équation.
- 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 :
- 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].
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.
- On partage l’intervalle [a ; b] en deux intervalles [a ; m] et [m ; b] avec .
- 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].
- 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.
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. |
|
Pour résumer, cet algorithme s’écrit en langage naturel de la façon suivante :
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
Programme Python | Commentaires |
|
On importe la bibliothèque math.
On déclare la fonction f. On traduit en langage Python l’algorithme expliqué dans la partie 1.a. |
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 :
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.
- On définit deux points A et B de coordonnées A(a ; f(a)) et B(b ; f(b)).
- 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. - On calcule l’abscisse c du point
d’intersection C de la
sécante (AB) avec l’axe des
abscisses.
On obtient : . - Tant que |c – a| > e, on recommence à partir de l’étape 1 avec a = c.
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. |
|
Pour résumer, cet algorithme s’écrit en langage naturel de la façon suivante :
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
Programme Python | Commentaires |
|
On importe la bibliothèque math.
On déclare la fonction. On traduit en langage Python l’algorithme expliqué dans la partie 2.a. |
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 :
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.
- On définit deux points A et B de coordonnées A(a ; f(a)) et B(b ; f(b)).
- On calcule l’équation de la tangente (d) à la courbe représentative de f au point B : y = f’(b)(x – b) + f(b).
- On calcule l’abscisse c du point d’intersection C de la tangente (AB) avec l’axe des abscisses. On obtient : .
- Tant que |c – b| > e, on recommence à partir de l’étape 1 avec b = c.
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. |
|
Pour résumer, cet algorithme s’écrit en langage naturel de la façon suivante :
c ← a
Tant que |b–c| > e
c ← b
b ← b – f(x)/fprim(x)
Fin Tant que
Retourner b
Fin Fonction
Programme Python | Commentaires |
|
On importe la bibliothèque math.
On déclare la fonction f.
On déclare de la même façon
la fonction dérivée. |
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 :
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.
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.
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.
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 !
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.
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 !