Se donner un repère du plan, c'est choisir un point $O$ appelé origine et deux vecteurs $\vect{i}$ et $\vect{j}$ non colinéaires appelés vecteurs de base. On note ce repère $(O\,;\,\vect{i}\,;\,\vect{j})$.
Lorsque $\vect{i}$ et $\vect{j}$ sont orthogonaux (perpendiculaires) et de norme 1 (longueur 1 unité), on dit que le repère est orthonormé.
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, tout point $M$ du plan est défini de manière unique par un couple de réels $(x_M\,;\,y_M)$ appelés coordonnées de $M$ :
$\overrightarrow{OM}=x_M\times\vect{i}+y_M\times\vect{j}$
$x_M$ est l'abscisse et $y_M$ est l'ordonnée de $M$.
Dans la vie réelle, les coordonnées GPS d'un lieu sont exactement cela : deux nombres (latitude et longitude) qui permettent de localiser n'importe quel endroit sur Terre de façon unique. Un repère à l'échelle de la planète !
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, si $\vect{u}=a\times\vect{i}+b\times\vect{j}$, on dit que $a$ et $b$ sont les coordonnées du vecteur $\vect{u}$, et on note :
$\vect{u}\begin{pmatrix}a\\b\end{pmatrix}$
$a$ est l'abscisse et $b$ est l'ordonnée du vecteur $\vect{u}$.
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, si $\vect{u}=a\times\vect{i}+b\times\vect{j}$, on dit que $a$ et $b$ sont les coordonnées du vecteur $\vect{u}$, et on note :
$\vect{u}\begin{pmatrix}a\\b\end{pmatrix}$
$a$ est l'abscisse et $b$ est l'ordonnée du vecteur $\vect{u}$.
Sur ce graphique on a $\vect{u}=3\times\vect{i}+2\times\vect{j}$ donc on notera $\vect{u}\begin{pmatrix}3\\2\end{pmatrix}$
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, si $A(x_A\,;\,y_A)$ et $B(x_B\,;\,y_B)$, alors :
$\overrightarrow{AB}\begin{pmatrix}x_B-x_A\\y_B-y_A\end{pmatrix}$
Démonstration : $\overrightarrow{AB}=\overrightarrow{AO}+\overrightarrow{OB}=-\overrightarrow{OA}+\overrightarrow{OB}$, donc $\overrightarrow{AB}\begin{pmatrix}x_B-x_A\\y_B-y_A\end{pmatrix}$.
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, on considère les points $A(1\,;\,3)$, $B(4\,;\,-1)$ et $C(-2\,;\,5)$.
Dans un jeu vidéo en 2D, un personnage se trouve en $A(120\,;\,80)$ (en pixels). Une cible est en $B(350\,;\,200)$.
(Les développeurs de jeux vidéo utilisent exactement ce calcul pour les déplacements et les trajectoires !)
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, si $\vect{u}\begin{pmatrix}a\\b\end{pmatrix}$ et $\vect{v}\begin{pmatrix}a'\\b'\end{pmatrix}$, alors :
$\vect{u}+\vect{v}\begin{pmatrix}a+a'\\b+b'\end{pmatrix}$
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, on donne $\vect{u}\begin{pmatrix}3\\-1\end{pmatrix}$ et $\vect{v}\begin{pmatrix}-2\\4\end{pmatrix}$.
Calculer les coordonnées de $\vect{u}+\vect{v}$ et de $\vect{u}-\vect{v}$.
Un bateau navigue avec une vitesse propre représentée par le vecteur $\vect{v_b}\begin{pmatrix}10\\0\end{pmatrix}$ (en nœuds, vers l'est). Un courant marin agit sur lui avec le vecteur $\vect{v_c}\begin{pmatrix}-2\\3\end{pmatrix}$ (courant venant du sud-est).
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, si $\vect{u}\begin{pmatrix}x\\y\end{pmatrix}$ et $k$ est un réel, alors :
$k\times\vect{u}\begin{pmatrix}k\times x\\k\times y\end{pmatrix}$
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, on donne $\vect{u}\begin{pmatrix}2\\-3\end{pmatrix}$.
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, on donne $\vect{u}\begin{pmatrix}1\\3\end{pmatrix}$, $\vect{v}\begin{pmatrix}-2\\1\end{pmatrix}$ et $\vect{w}\begin{pmatrix}5\\-1\end{pmatrix}$.
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, on considère $\vect{u}\begin{pmatrix}x\\y\end{pmatrix}$ et $\vect{v}\begin{pmatrix}x'\\y'\end{pmatrix}$.
$\vect{u}$ et $\vect{v}$ sont colinéaires si et seulement si :
$x\times y'-x'\times y=0$
Le réel $x\times y'-x'\times y$ s'appelle le déterminant du couple $(\vect{u},\vect{v})$.
Sens direct : Si $\vect{v}=k\vect{u}$, alors $x'=kx$ et $y'=ky$, donc $x\times y'-x'\times y = x(ky)-(kx)y = kxy-kxy=0$. ✓
Réciproque : On suppose $x\times y'-x'\times y=0$ et $\vect{u}\neq\vect{0}$.
Dans tous les cas, $\vect{v}=k\vect{u}$ : les vecteurs sont colinéaires. ✓
Deux droites $(AB)$ et $(CD)$ sont parallèles si et seulement si $\overrightarrow{AB}$ et $\overrightarrow{CD}$ sont colinéaires.
Dans un repère $(O\,;\,\vect{i}\,;\,\vect{j})$, on considère les points $A(1\,;\,2)$, $B(4\,;\,5)$, $C(-1\,;\,0)$ et $D(5\,;\,9)$.
Trois points $A$, $B$, $C$ sont alignés si et seulement si $\overrightarrow{AB}$ et $\overrightarrow{AC}$ sont colinéaires.
Les points $A(-2\,;\,1)$, $B(1\,;\,3)$ et $C(7\,;\,7)$ sont-ils alignés ?
Lors d'une randonnée, un GPS enregistre trois positions successives : $P_1(2\,;\,5)$, $P_2(5\,;\,8)$ et $P_3(11\,;\,14)$ (en kilomètres).
(En navigation, vérifier l'alignement de points de repère permet de contrôler une trajectoire : c'est le principe du « relèvement » utilisé en marine.)
Dans un repère orthonormé $(O\,;\,\vect{i}\,;\,\vect{j})$, la norme du vecteur $\vect{u}\begin{pmatrix}a\\b\end{pmatrix}$ est le réel positif ou nul :
$\left\|\vect{u}\right\|=\sqrt{a^2+b^2}$
La norme d'un vecteur $\overrightarrow{AB}$ est égale à la distance entre les points $A$ et $B$ :
$AB=\left\|\overrightarrow{AB}\right\|=\sqrt{(x_B-x_A)^2+(y_B-y_A)^2}$
C'est le théorème de Pythagore généralisé à tout repère orthonormé !
Dans un repère orthonormé $(O\,;\,\vect{i}\,;\,\vect{j})$, on donne $\vect{u}\begin{pmatrix}3\\4\end{pmatrix}$, $\vect{v}\begin{pmatrix}-1\\2\end{pmatrix}$ et les points $A(1\,;\,3)$, $B(5\,;\,6)$.
Sur un plan de chantier (repère orthonormé, unité : le mètre), deux poteaux porteurs se trouvent en $P(3\,;\,1)$ et $Q(9\,;\,9)$.
Sur une carte, Mâcon est repérée en $M(0\,;\,0)$, Lyon en $L(1\,;\,-7)$ et Paris en $P(-20\,;\,35)$ (unité : 10 km).
Dans un repère orthonormé, on se donne le vecteur $\vect{u}\begin{pmatrix}3\\2\end{pmatrix}$ et le point $A(1\,;\,0)$.
(Les artistes numériques utilisent des suites de vecteurs pour créer des motifs réguliers et des fractales.)
Dans un repère orthonormé $(O\,;\,\vect{i}\,;\,\vect{j})$, on considère les points :
$A(1\,;\,1)$, $B(5\,;\,2)$, $C(6\,;\,5)$ et $D(2\,;\,4)$.
Un robot mobile se trouve en $R(2\,;\,3)$ (unité : mètre). Il reçoit deux instructions successives :
(Ce type de calcul est utilisé dans les aspirateurs robots, les drones de livraison et les voitures autonomes !)
def coordonnees_vecteur(A, B): return (B[0]-A[0], B[1]-A[1]) def norme(v): return (v[0]**2 + v[1]**2)**0.5 def sont_colineaires(u, v): return u[0]*v[1] - u[1]*v[0] == 0 def milieu(A, B): return ((A[0]+B[0])/2, (A[1]+B[1])/2)
A et B dans la fonction coordonnees_vecteur ?norme((3,4)) ? Vérifier à la main.sont_colineaires((2,4),(1,2)) ? Et sont_colineaires((1,2),(3,4)) ?1) A et B sont des tuples (ou listes) à deux éléments représentant les coordonnées d'un point : A = (x_A, y_A).
2) norme((3,4)) calcule $\sqrt{3^2+4^2}=\sqrt{9+16}=\sqrt{25}=\mathbf{5{,}0}$.
Vérification : triangle rectangle classique $(3,4,5)$. ✓
3) sont_colineaires((2,4),(1,2)) : $2\times2 - 4\times1 = 4-4 = 0$ → renvoie True ✓
sont_colineaires((1,2),(3,4)) : $1\times4 - 2\times3 = 4-6 = -2 \neq 0$ → renvoie False ✓
4) $A(1\,;\,2)$, $B(4\,;\,5)$, $C(7\,;\,8)$ alignés $\iff$ $\overrightarrow{AB}$ et $\overrightarrow{AC}$ colinéaires.
A = (1, 2) B = (4, 5) C = (7, 8) AB = coordonnees_vecteur(A, B) # → (3, 3) AC = coordonnees_vecteur(A, C) # → (6, 6) if sont_colineaires(AB, AC): print("A, B, C sont alignés") else: print("A, B, C ne sont pas alignés")
Conclusion : $A$, $B$ et $C$ sont bien alignés. ✓
from math import sqrt def distance(A, B): dx = B[0] - A[0] dy = B[1] - A[1] return sqrt(dx**2 + dy**2) def livraison(base, destinations): position = base trajet = 0 for dest in destinations: trajet = trajet + distance(position, dest) print("Livraison en", dest, "- Chemin parcouru :", round(trajet, 2), "km") position = dest trajet = trajet + distance(position, base) print("Retour a la base. Distance totale :", round(trajet, 2), "km") livraison((0, 0), [(3, 4), (7, 1), (5, 8)])
On obtient en console :
(3, 4)).10.0 est-elle exacte alors que 17.28 et 26.71 sont des valeurs approchées ?1) Première livraison en $(3,4)$ depuis la base $(0,0)$ :
$d = \sqrt{(3-0)^2+(4-0)^2}=\sqrt{9+16}=\sqrt{25}=\mathbf{5{,}0}$ km ✓
2) $5{,}0$ et $10{,}0$ sont exacts car les deux premiers tronçons forment des triangles rectangles pythagoriciens $(3,4,5)$, dont la longueur est un entier.
Les tronçons suivants font intervenir $\sqrt{53}$ et $\sqrt{89}$ qui sont irrationnels.
3) Retour à la base après chaque livraison :
def livraison_retour(base, destinations): trajet = 0 for dest in destinations: aller = distance(base, dest) retour = distance(dest, base) trajet = trajet + aller + retour print("Livraison en", dest, "A/R :", round(aller+retour, 2), "km") print("Distance totale :", round(trajet, 2), "km")