Python au lycée (4) : Les fonctions
Exercices
Python : Distance entre deux points du plan
10 minutes
Votre progression
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteObjectifs travaillés
Le plan est muni d'un repère orthonormé. Pour deux points $ A(x_A\,;\,y_A) $ et $ B(x_B\,;\,y_B) $, la distance $ AB $ est donnée par la formule :
$ AB = \sqrt{(x_B - x_A)^2 + (y_B - y_A)^2} $
- Calculer « à la main » la distance $ AB $ avec $ A(1\,;\,2) $ et $ B(4\,;\,6) $.
- Écrire une fonction Python distance(xA, yA, xB, yB) qui renvoie la distance entre les points $ A(x_A\,;\,y_A) $ et $ B(x_B\,;\,y_B) $.
- Utiliser la fonction pour vérifier le résultat de la question 1.
- Calculer la distance $ CD $ avec $ C(-2\,;\,3) $ et $ D(5\,;\,-1) $. On donnera une valeur arrondie à $ 0{,}01 $ près.
Corrigé
- On applique la formule avec $ A(1\,;\,2) $ et $ B(4\,;\,6) $ :
$ AB = \sqrt{(4-1)^2 + (6-2)^2} = \sqrt{3^2 + 4^2} = \sqrt{9 + 16} = \sqrt{25} = \mathbf{5} $. On importe la fonction sqrt (racine carrée) du module math :
from math import sqrt def distance(xA, yA, xB, yB): return sqrt((xB - xA)**2 + (yB - yA)**2)Test :
>>> distance(1, 2, 4, 6) 5.0On retrouve bien $ AB = 5 $.
On applique la fonction aux points $ C(-2\,;\,3) $ et $ D(5\,;\,-1) $ :
$ CD = \sqrt{(5 - (-2))^2 + (-1 - 3)^2} = \sqrt{7^2 + (-4)^2} = \sqrt{49 + 16} = \sqrt{65} $.
Avec Python :>>> distance(-2, 3, 5, -1) 8.06225774829855On obtient donc $ CD \approx \mathbf{8{,}06} $.