Vérifier que distance((0, 0), (3, 4)) vaut
Application directe du cours · niveau 1 (application) · NSI (première), chapitre 8 — Dichotomie, voisins et gloutons · Voisins et gloutons
Énoncé
Vérifier que distance((0, 0), (3, 4)) vaut . Que se passe-t-il si les deux p-uplets n'ont pas la même longueur ?
Corrigé
assert distance((0, 0), (3, 4)) == 5.0 # le triangle 3-4-5
assert distance((1, 1), (1, 1)) == 0.0
try:
distance((1, 2), (1, 2, 3))
assert False
except AssertionError as e:
assert "dimensions" in str(e)
Sans la précondition, la boucle for i in range(len(p)) s'arrêterait à la longueur du premier p-uplet et calculerait une distance sur les deux premières coordonnées seulement — un résultat plausible, et faux. L'assert transforme une erreur silencieuse en arrêt net.
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.