Manipulate[Module[{xVec,yVec,diffVec,normX,normY,normDiff,minBound,maxBound},(*Définition des vecteurs à partir des points de contrôle*)xVec=pX;
yVec=pY;
diffVec=xVec-yVec;
(*Calculs des normes*)normX=Norm[xVec];
normY=Norm[yVec];
normDiff=Norm[diffVec];
minBound=Abs[normX-normY];
maxBound=normX+normY;
Column[{Graphics[{{Thickness[0.01],Blue,Arrow[{{0,0},xVec}]},{Thickness[0.01],Red,Arrow[{{0,0},yVec}]},{Thickness[0.008],Darker[Green],Dashed,Arrow[{yVec,xVec}]},(*Annotations*)Inset[Style["X",Blue,15],xVec,{-1,-1}],Inset[Style["Y",Red,15],yVec,{-1,-1}],Inset[Style["X - Y",Darker[Green],15],(xVec+yVec)/2,{0,0}]},PlotRange->{{-6,6},{-6,6}},Axes->True,GridLines->Automatic,ImageSize->400],(*Affichage des vérifications mathématiques*)Panel[Grid[{{"||X||","=",NumberForm[normX,{3,2}]},{"||Y||","=",NumberForm[normY,{3,2}]},{"||X - Y||","=",Style[NumberForm[normDiff,{3,2}],Bold,Darker[Green]]},{"Borne Min (||X|| - ||Y||)","=",NumberForm[minBound,{3,2}]},{"Borne Max (||X|| + ||Y||)","=",NumberForm[maxBound,{3,2}]},{"Vérification :","",If[minBound-0.001<=normDiff<=maxBound+0.001,Style["✓ Inégalité respectée",Bold,Darker[Green]],Style["Erreur",Red]]}},Alignment->Left]]},Center]],(*Points de contrôle interactifs*){{pX,{3,4}},Locator},{{pY,{-2,2}},Locator},SaveDefinitions->True]