Bonjour, pouvez-vous m'aider à faire cette exercice svp On considère l'algorithme suivant: INITIALISATION : a prend la valeur 2 b prend la valeur 3 TRAITEMENT: Tant que b-a ≥ 10puissance-3 faire m prend la valeur a+b/2 Si m(au carré) < 7 alors a prend la valeur m sinon b prend la valeur m FinSi FinTanque SORTIES: Afficher a,b 1. Effectuer à la main 4 itérations en remplissant le tableau suivant: a| | | | | b| | | | | m| | | | | 2. Quel est le rôle de cet algorithme ? 3. Rédiger le programme en langage Python.
Lista de comentários
Bonjour,
3)
a = 2
b = 3
while (b - a) >= 10**(-3):
m = (a + b) / 2
if m**2 < 7:
a = m
else:
b = m
print(a, b)
1)
a: 2 | 2,5 | 2,5 | 2,625 | 2,625 | 2,625 | 2,640625 | 2,640625 | 2,64453125 | 2,64453125 | 2,645507813
b: 3 | 3 | 2,75 | 2,75 | 2,6875 | 2,65625 | 2,65625 | 2,6484375 | 2,6484375 | 2,646484375 | 2,646484375
m: 2,5 | 2,75 | 2,625 | 2,6875 | 2,65625 | 2,640625 | 2,6484375 | 2,64453125 | 2,646484375 | 2,645507813
Résultat affiché:
a = 2,645507813 (environ, ça dépend des précisions de la calculatrice utilisée mais c'est les 4 premiers chiffres qui sont important)
b = 2,646484375
2)
Il s'agit d'un algorithme qui utilise la dichotomie pour calculer une valeur approchée à 10⁻³ près de √7.
Bonne journée.