π
<-
Chat plein-écran
[^]

programme intersection de 2 droites

Pour le TI-Basic sur Nspire

programme intersection de 2 droites

Message non lude frxxneoxx » 23 Oct 2017, 18:43

bonjour,

Je poursuis mon apprentissage de la programmation sur ti et j'aurais besoin d'un peu d'aide.

J'essaye de créer un programme qui me donne les coordonnées du point d'intersection de 2 droites:

Code: Tout sélectionner
Define interdroite()=
Prgm
:Request "Xa",xa
:Request "Ya",ya                           © on demande à l'utilisateur de saisir les données de la première droite AB
:Request "Xb",xb
:Request "Yb",yb
:
:m1:=((yb-ya)/(xb-xa))                 © élément de l'équation de la droite AB
:p1:=ya-m1*xa
:
e1:=m1*x-y=−p1                           © L'équation de AB
:
:
:Request "Xc",xc
:Request "Yc",yc
:Request "Xd",xd                            © on demande à l'utilisateur de saisir les données de la deuxième droite CD
:Request "Yd",yd
:
:m2:=((yd-yc)/(xd-xc))                   © élément de l'équation de la droite CD
:p2:=yc-m2*xc
:
:e2:=m2*x-y=−p2                            © L'équation de CD
:
:Disp "équation 1→",e1
:Disp "équation 2→",e2
:
:solve(system(e1,e2),{x,y})               © on résout le système
:
:
:
:EndPrgm


Mon problème, est que je ne trouve pas la manière d'afficher les coordonnées du point d'intersection. Dois-je recréer le programme 'solve' au sein de mon programme ou il y a un méthode qui m'échappe?

merci de votre aide.
Dernière édition par frxxneoxx le 24 Oct 2017, 15:18, édité 2 fois.
Avatar de l’utilisateur
frxxneoxx
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 8%
 
Messages: 14
Inscription: 02 Sep 2017, 15:05
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude Hamza.S » 23 Oct 2017, 18:46

salut,

fais
Code: Tout sélectionner
Disp solve(system(e1,e2),{x,y})
Image
Avatar de l’utilisateur
Hamza.SAdmin
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Prochain niv.: 28.5%
 
Messages: 4461
Images: 18
Inscription: 07 Nov 2014, 00:43
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude frxxneoxx » 23 Oct 2017, 21:06

Hamza.S a écrit:salut,

fais
Code: Tout sélectionner
Disp solve(system(e1,e2),{x,y})


à chaque fois cet un truc tout bête ... :whistle: merci Hamza

j'avais trouvé ceci, qui marche aussi

Code: Tout sélectionner
:solve(system(e1,e2),{x,y})→sol
:Disp propFrac(sol)
Avatar de l’utilisateur
frxxneoxx
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 8%
 
Messages: 14
Inscription: 02 Sep 2017, 15:05
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude frxxneoxx » 24 Oct 2017, 15:42

bonjour,

je paufine mon programme mais je suis de nouveau coincé:

Code: Tout sélectionner
Define topointersec()=
Prgm

© J'ai volontairement pas mis tout le programme tout ne pas trop surcharger

e2:=(x+xo)^(2)+(y+yo)^(2)=r^(2) © l'équation du cercle
:Disp "Equation du cercle→",e2
:Disp solve((x-xo)^(2)+(e1-yo)^(2)-r^(2)=0,x) © on résout le polynôme pour déterminer les solutions en x
:
:Disp solve((x-xo)^(2)+(y-yo)^(2)-r^(2)=0,y) © on résout l'équation avec les résultats en x  pour déterminer les solutions en y
:
:
:EndPrgm


je ne vois pas comment faire pour injecter les solutions de x dans l'équation afin que le programme me retourne également les solutions en y.

merci de votre aide.
Avatar de l’utilisateur
frxxneoxx
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 8%
 
Messages: 14
Inscription: 02 Sep 2017, 15:05
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude Bisam » 24 Oct 2017, 16:41

Si tu fais l'intersection d'une droite et d'un cercle, une fois que tu connais les abscisses des points d'intersection, il est bien plus simple de calculer les ordonnées à l'aide de l'équation de la droite qu'à l'aide de l'équation du cercle !
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.5%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude frxxneoxx » 24 Oct 2017, 16:57

c'est vrai et j'ai fais les 2 pour vérifier l'exactitude et la précision de mon programme mais dans les 2 cas je ne vois pas comment remplacer x par les résultats obtenu au polynôme mise à part recopier manuellement x1 puis x2 pour obtenir y1 et y2.

edit: J'ai finalement fais autrement:
Code: Tout sélectionner
:e1:=m1*x-y=−p1:                                                              ©Équation droite
:e2:=(x-xo)^(2)+(y-yo)^(2)=r^(2)                                                  ©Équation cercle
:
:
:
:Disp solve(system(e1,e2),{x,y})                                                  ©Solutions


Mais je suis preneur de la méthode pour injecter les résultats d'un polynôme dans la suite d'un calcul :D
Avatar de l’utilisateur
frxxneoxx
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 8%
 
Messages: 14
Inscription: 02 Sep 2017, 15:05
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude Bisam » 24 Oct 2017, 17:53

La fonction exp►list(resultat, variable) renvoie une liste des solutions lorsque "resultat" est une expression donnant l'ensemble des solutions.

Exemple d'utilisation :
Code: Tout sélectionner
solutions:=solve(e1 and e2,{x,y})
disp exp►list(solutions, {x,y})


Ici, on obtient sur chaque ligne un couple solution.
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.5%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude frxxneoxx » 24 Oct 2017, 18:35

Bisam a écrit:La fonction exp►list(resultat, variable) renvoie une liste des solutions lorsque "resultat" est une expression donnant l'ensemble des solutions.

Exemple d'utilisation :
Code: Tout sélectionner
solutions:=solve(e1 and e2,{x,y})
disp exp►list(solutions, {x,y})


Ici, on obtient sur chaque ligne un couple solution.


J'ai du mal m'exprimer car c'est pas ce que je voulais.

mon idée était de pouvoir réutiliser les solutions x1 et x2 dans la suite du programme.

Par exemple:
Code: Tout sélectionner
:e1:=m1*x-y=−p1:
:e2:=(x-xo)^(2)+(y-yo)^(2)=r^(2)                                                  ©Equation cercle
:
:Disp solve(system(e1,e2),{x,y})                                                  © afficher les coordonnées d'intersection 


le programme renvoi:
x=140.739 and y=599.672 or x=265.95 and y=601.109


ce que je voudrais c'est pouvoir réutiliser ces solution dans le programme même:
Code: Tout sélectionner
:e1:=m1*x-y=−p1:
:e2:=(x-xo)^(2)+(y-yo)^(2)=r^(2)                                                  ©Equation cercle
:
:Disp solve(system(e1,e2),{x,y})                                                  © afficher les coordonnées d'intersection
:
dab:=approx(√((xb-xa)^(2)+(yb-ya)^(2)))                                       ©xa,ya /  xb,yb étant les solutions du polynome
:Disp "distance ab=",dab                                                               ©afficher la distance séparent les 2 points d'intersections 


Pour que le programme me retourne quelque chose comme ça:
x=140.739 and y=599.672 or x=265.95 and y=601.109
distance ab= 125.219


J'espère que c'est plus claire :#roll#:
Avatar de l’utilisateur
frxxneoxx
Niveau 4: MC (Membre Confirmé)
Niveau 4: MC (Membre Confirmé)
Prochain niv.: 8%
 
Messages: 14
Inscription: 02 Sep 2017, 15:05
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: programme intersection de 2 droites

Message non lude Bisam » 25 Oct 2017, 08:08

C'était très clair... c'est toi qui ne semble pas avoir compris ma réponse.

Le résultat renvoyé par un "solve" est une expression comportant des égalités : pas facile à utiliser pour faire des calculs.
Si on lui applique la fonction "exp►list", on obtient une liste de résultats... et comme c'est une liste, on peut utiliser chacun des éléments séparément bien plus facilement dans la suite du programme.
Avatar de l’utilisateur
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Prochain niv.: 69.5%
 
Messages: 5665
Inscription: 11 Mar 2008, 00:00
Localisation: Lyon
Genre: Homme
Calculatrice(s):
MyCalcs profile


Retourner vers Nspire-Basic

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 13 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1266 utilisateurs:
>1255 invités
>6 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)