Bonjour j'ai un dm à rendre, pouvez-vous m'aider s'il vous plait?
Merci d'avance
Soit un cube ABCDEFGH d?arête 1.
Dans le repère : (A ;AB ,AD ,AE)
on considère les points M, N et P de coordonnées respectives M(1 ; 1 ; 3/4), N(0 ;1/2; 1), P
(1 ; 0 ; ?5/4).
1-Déterminer les coordonnées des vecteurs MN MP .
2-En déduire que les points M, N et P ne sont pas alignés.
3-compléter la fonction scalaire ci-dessous, qui prend en paramètres les coordonnées de deux vecteurs sous le forme de deux listes de trois nombres et renvoie le produit scalaire de ces vecteurs.
1 def scalaire(u,v):
2 return u[O]*v[...]+...+...
4- coder une fonction rectangle, qui prend en paramètres les coordonnées entières de trois points et renvoie un booléen indiquant s'il s'agit des sommets d'un triangle rectangle.
5- coder une fonction isocèle qui indique si trois points sont les sommets d'un triangle isocèle.
6- à l'aide de ces fonctions, déterminer la nature du triangle MNP
Bonsoir
sais-tu utiliser Python ? Connais-tu la formule du produit scalaire de deux vecteurs d'après leurs coordonnées ?
Si tu réponds oui aux deux questions alors tu ne devrais pas avoir de difficulté pour la 3)
bonsoir
il s'agit de coder le produit scalaire
u (u1,u2) et v(v1,v2)
quel est le résultat du produit scalaire?
j'ai mis :
def scalaire(u,v):
return u[O]*v[...]+u[...]*v[...]+u[...]*v[...]
je ne sais pas quoi mettre entre les crochets
ah il faut mettre directement les coordonnées de ce que j'ai trouvé
u[0]*v[-1]+u[-1]*v[-0.5]+u[-2]*v[0.25]
le résultat du produit scalaire est 0 donc on a triangle rectangle, mais je n'arrive pas à faire les fonctions python
Non, ça ne marche pas comme ça
ici, u et v sont des vecteurs, et u[...] désigne une coordonnée particulière du vecteur u, et on met entre crochets l'indice de la coordonnée qu'on veut
note : en python, on commence par 0 et non pas par 1, c'est une convention
Quelle est la formule du produit scalaire de et
?
from math import *
def rectangle(xA,yA,zA,xB,yB,zB,xC,yC,zC):
a = float((xA-xB)**2+(yA-yB)**2+(zA-zB)**2)
b = float((xA-xC)**2+(yA-yC)**2+(zA-zC)**2)
c = float((xC-xB)**2+(yC-yB)**2+(zC-zB)**2)
if (c==a+b or b==a+c or a==b+c):
return True
return False
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :