Outils pour utilisateurs

Outils du site


nsi:tds:maths:racine_dichotomie

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
nsi:tds:maths:racine_dichotomie [2022/04/03 15:16] – ↷ Page déplacée de nsi:tds:racine_dichotomie à nsi:tds:maths:racine_dichotomie goupillwikinsi:tds:maths:racine_dichotomie [2023/03/14 16:55] (Version actuelle) – [Implémentation] goupillwiki
Ligne 27: Ligne 27:
          e taille de l'intervalle final          e taille de l'intervalle final
 Prérequis: a < b ; f(a) et f(b) de signe opposé Prérequis: a < b ; f(a) et f(b) de signe opposé
-Renvoie un intervalle inclus dans [a;b], de taille inférieure à e +Renvoie une approximation de la solution à f(x) = 0 
-  et contenant une solution de f(x) = 0+  contenue dans [a;b], et avec une erreur inférieur à e
 DÉBUT DÉBUT
     TANT QUE taille [a;b] >= e RÉPÉTER     TANT QUE taille [a;b] >= e RÉPÉTER
         m prend la valeur du milieu de [a;b]         m prend la valeur du milieu de [a;b]
-        y_m = f(m) 
         SI f(m) et f(a) de signe opposé ALORS         SI f(m) et f(a) de signe opposé ALORS
             b prend la valeur de m             b prend la valeur de m
Ligne 39: Ligne 38:
         FIN         FIN
     FIN     FIN
-    RENVOYER [a;b]+    RENVOYER (b)/2
 FIN FIN
 </code> </code>
Ligne 48: Ligne 47:
  
 <code python linenums> <code python linenums>
-def dichotomie(a, b, f, e):+def dichotomie(a:float, b:float, f, e:float-> float:
     """     """
     a,b : bornes de l'intervalle     a,b : bornes de l'intervalle
     f: fonction     f: fonction
     e: taille maximale de la solution désirée     e: taille maximale de la solution désirée
-    renvoie un intervalle inclus dans [a;b], de taille < e et contenant une solution de f(x) = 0+    renvoie une approx de la solution à f(x) = 0, 
 +      solution dans [a;b], avec une erreur < e
     """     """
-    assert f(a) * f(b) < 0 # Vérifie que f(a) et f(b) de signe opposé+    assert a < b 
 +    assert f(a) * f(b) <0 # Vérifie que f(a) et f(b) de signe opposé
     assert e > 0     assert e > 0
          
Ligne 63: Ligne 64:
     # zone de test     # zone de test
     def f(x):     def f(x):
-        return -1/4*x**3 + 9/2**x**2 - 13*x - 59+        return -1/4*x**3 + 9/2*x**2 - 13*x - 59
  
     sol = dichotomie(0,10,f,1e-6)     sol = dichotomie(0,10,f,1e-6)
     print(sol)     print(sol)
 </code> </code>
nsi/tds/maths/racine_dichotomie.1648991775.txt.gz · Dernière modification : de goupillwiki