Bonjour,
Ma prof de math nous a donner des exercices a faire avec python. Cependant un des exercices a faire je ne l'ai jamais fait auparavant .Voici son énoncé :
Ecrire un programme python permettant de savoir si les droites (AB) et (CD) sont parallèles
Completer le programme de 1ere ligne : def test(xA,yA,xB,xC,yC,xD,yD):
Merci de votre aide !
bonjour,
avant de programmer en python, il faut savoir ce que tu vas demander à ton programme..
Si tu devais le faire sans programme, comment ferais tu pour determiner si les droites (AB) et (CD) sont // ?
oui, tu peux vérifier la colinéarité des vecteurs AB et CD,
tu peux aussi calculer les coefficients directeurs des deux droites..
donc, que ferais tu sans programme ?
J ai oublier de rajoutez au début de l'énonce : Soient A(xA;yA) , B(xb;yb) C(xc;yc) et D(xd; yd)
Sinon sans programme je calculerais les vecteurs AB et CD (en faisant par exemple pour AB: (xb-xa)
(yb-ya)
Puis j aurait faire la colinéarité (je ne peux la faire sans exemple concret)
oui, tu pourrais
calculer les coordonnées des vecteurs AB (X ; Y) et CD (X'; Y') et voir si
XY' - YX' = 0
(on peut écrire la condition de colinéarité même sans exemple concret ! )
en langage naturel, ça donnerait :
entrer xA, yA, xB, yB, etc....
si (xB-xA)(yD-yC) - (yB-yA)(xD-xC) = 0
alors afficher "les droites sont //"
sinon afficher "les droites de sont pas // ".
tu es d'accord ?
Avec votre précèdent message j'ai pu ecrire ce programme :
from math import*
def test(xA,yA,xB,xC,yC,xD,yD):
if (xB-xA)*(yD-yC)-(yB-yA)*(xD-xC)==0
return(True)
else:
return(False)
oui, c'est bien
attention : tu as oublié yB dans l'instruction def
et à la fin de la ligne if, il te faut ":"
je te laisse tester ta procédure avec des nombres !
C'est normal que quand je mets dans le shell tous les nombres (ex xA=2) avec tous les nombres a la fin rien ne s affiche
si tu veux que quelque chose s'affiche, il faut que tu lui demandes d'afficher avec une instruction print.
là, tu retournes juste True ou False, mais tu n'affiches rien..
tu peux afficher "Vrai" ou "Faux"
ou écrire retour = "Vrai"
else :
retour = "Faux"
puis afficher retour
Pas forcement afficher mais juste qu' il me retourne false ou true d'habitude ca le fait si je me trompe pas
d'habitude, que fais tu avec false ou true ?
tu me dis "a la fin rien ne s affiche.." : si tu veux que quelque chose s'affiche, il faut le demander au programme..
avec les deux
mais quand on dit au programme "return" ca veut dire qu il repond a la fin true ou false non ?
Ethan3686,
oui, il répond true ou false, mais si tu ne l'affiches pas, tu ne la vois pas.
(si tu me demandes si tes droites sont //, je peux dérouler mes calculs, et conclure Vrai ou faux, mais si je ne tape pas ma réponse, tu ne la vois pas, n'est ce pas ? )
Toi tu dis "rien ne s'affiche", donc tu veux voir la réponse.
essaie d'ajouter une instruction print, tu verras bien.
OK ?
Je dois quitter. Bonne après midi.
Bonjour,
un autre conseil:
avant de faire des copies d'écran, réduire la taille des fenêtres de sorte que la fenêtre que l'on veut mettre en image soit de la taille d'une image !!
parce que là, ta copie d'écran, on ne voit absolument rien du tout, à part qu'elle est remplie d'un grand vide inutile
et c'est pareil que si tu n'avais rien donné du tout.
un exemple, avec EduPython, proposé par alb12 (ce serait pareil avec n'importe quel autre Python)
mais avec une fenêtre volontairement réduite de sorte qu'on puisse lire tout ce qu'il est utile de lire :
on y voit que, une fois le programme lancé, (*** Console de processus distant Réinitialisée ***)
en appelant la fonction test(liste de valeurs) dans la console
la valeur retournée par cette fonction s'affiche bien
(le simple lancement du programme ne fait que définir une fonction sans rien calculer)
Vous devez être membre accéder à ce service...
Pas encore inscrit ?
1 compte par personne, multi-compte interdit !
Ou identifiez-vous :