Besoin d'aide Python s'il vous plaît

Alexx.L Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
quent217 Messages postés 420 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
je suis en classe de Première et il faut que je fasse un programme qui, après avoir demandé les coordonnées de deux points distincts, soit capable de me renvoyer l'équation de la droite passant par ces deux points. Mon principal problème est qu'il faut aussi que cela fonctionne pour les droites verticales, donc quand les deux points ont la même abscisse (sauf si erreur de ma part).
Pour l'instant, mon programme ressemble à cela, et il fonctionne assez bien, sauf pour les droites verticales, comme vous l'aurez deviné. Il m'indique un message d'erreur disant "Error : float division by zero", car il est impossible de diviser par 0, mais je n'arrive pas à y remédier.

xA = float(input("Abscisse du point A ?"))
yA = float(input("Ordonnée du point A ?"))
xB = float(input("Abscisse du point B ?"))
yB = float(input("Ordonnée du point B ?"))
C = (yB-yA)/(xB-xA)
if xB==xA:
  print ("Impossible. La droite est verticale")
D = (xA*C)-yA
print (C,"x +", D, "est l'équation de la droite passant par les points A et B")


Voilà si quelqu'un pourrait m'aider ce serait grandement apprécié, le plus tôt possible serait le mieux car je dois le rendre dans quelques jours.

(Si vous pouvez en plus résoudre le fait que quand le b de ax + b est négatif, ça ne me fasse pas ax + -b, je vous serais grandement reconnaissant)

PS : Je ne sais pas si certaines commandes peuvent changer en fonction des sites, mais si c'est le cas, il faut que j'utilise trinket.io

4 réponses

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour,
https://www.commentcamarche.net/infos/25899-demander-de-l-aide-pour-vos-exercices-sur-ccm/
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
quelle est l'équation d'une droite verticale?
tu n'as aucune idée comment faire quand b est négatif?
0
Chris 94 Messages postés 54087 Date d'inscription   Statut Modérateur Dernière intervention   7 345
 
Bonjour,

"Pour le résoudre," faut pas trop demander non plus... C'est ton exercice, pour que tu apprennes. Ceux qui peuvent intervenir n'ont pas, plus besoin de s'entrainer ;-)

0
Alexx.L Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour, premièrement j'aimerais vous remercier tous deux de m'avoir répondu, c'est très aimable, et je suis désolé si vous avez compris que je voulais directement la réponse, c'est ma première fois sur ce site et je me suis mal exprimé.
Pour l'équation d'une droite verticale, si je me souviens bien sa pente est infinie, et elle n'a pas d'ordonnée à l'origine, non ? (Je ne sais pas comment écrire infini dans python non plus)
Et non, je ne sais vraiment pas faire pour le b quand il est négatif, malheureusement.
0
quent217 Messages postés 420 Date d'inscription   Statut Membre Dernière intervention   347
 
Bonjour,
l'équation y = ax + b est une équation de fonction affine, et une droite verticale ne peut donc pas être représentée par une équation de ce type.
Je vous invite à chercher sur internet ou dans votre cours ce qu'est une équation de droite. Cela vous permettra probablement de résoudre votre problème.

Pour le b négatif, ne peut-on pas simplement faire une condition pour savoir s'il est plus petit ou plus grand que 0 ?
0