Écrire l'appel qui teste « 0,1 + 0,2 vaut-il 0,3 ? » de la bonne…
Application directe du cours · niveau 1 (application) · NSI (première), chapitre 2 — Flottants, booléens et textes · Lire, écrire et comparer des flottants
Énoncé
Écrire l'appel qui teste « vaut-il ? » de la bonne manière, avec presque_egaux du cours puis avec math.isclose. Comparer les deux réponses à celle de ==.
Corrigé
>>> 0.1 + 0.2 == 0.3
False
>>> presque_egaux(0.1 + 0.2, 0.3)
True
>>> import math
>>> math.isclose(0.1 + 0.2, 0.3)
True
>>> abs((0.1 + 0.2) - 0.3)
5.551115123125783e-17
L'écart vaut , très en dessous de la tolérance : les deux tests corrects répondent « oui », le test d'égalité répond « non ».
Contrôle : la bonne question n'est pas « ces deux flottants sont-ils le même ? » mais « leur écart est-il négligeable devant leur ordre de grandeur ? ». C'est cette seconde question que le programme demande de poser.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.