Algorithme vecteurs

Réponses à toutes vos questions de la 2nde à la Terminale toutes séries
mama00165
Membre Naturel
Messages: 37
Enregistré le: 23 Sep 2017, 21:56

algorithme vecteurs

par mama00165 » 29 Oct 2017, 17:10

Bonjour
voici un algorithme qui permet de dire si des vecteurs sont colinéaire et qui permet de définir l'equation cartésienne d'une droite.
Cependant il y a plusieurs erreurs et j'aimerais qu'il soit le plus court et efficace possible
Par avance merci de votre aide
VARIABLES
xU EST_DU_TYPE NOMBRE
yU EST_DU_TYPE NOMBRE
xV EST_DU_TYPE NOMBRE
yV EST_DU_TYPE NOMBRE
xA EST_DU_TYPE NOMBRE
yA EST_DU_TYPE NOMBRE
choix EST_DU_TYPE NOMBRE
Equation cartésienne EST_DU_TYPE NOMBRE
DEBUT_ALGORITHME
AFFICHER* "Taper 1 pour déterminer si des vecteurs sont colinéaires"
AFFICHER* "Taper 2 pour déterminer l'équation cartésienne d'une droite à partir d'un point et d'un vecteur"
AFFICHER* "Taper 0 pour quitter le programme"
LIRE choix
TANT_QUE (Entrer_choix ==1 OU Entrer_choix==2 OU Entrer_choix==0) FAIRE
DEBUT_TANT_QUE
SI (Entrer_choix==0 OU Entrer_choix==1 OU Entrer_choix==2) ALORS
DEBUT_SI
SI (Entrer_choix==1) ALORS
DEBUT_SI
AFFICHER* "Abscisse du premier vecteur ?"
LIRE xU
AFFICHER* "Ordonnée du premier vecteur ?"
LIRE yU
AFFICHER* "Abscisse du second vecteur ?"
LIRE xV
AFFICHER* "Ordonnée du second vecteur ?"
LIRE yV
SI ((xU*yV)-(yU*xV)==0) ALORS
DEBUT_SI
AFFICHER* "Lesvecteurs sont colinéaires"
FIN_SI
SINON
DEBUT_SINON
AFFICHER* "Les vecteurs ne sont pas colinéaires"
FIN_SINON
FIN_SI
SI (Entrer_choix==2) ALORS
DEBUT_SI
LIRE xA
LIRE yA
LIRE xU
LIRE yU
Equation cartésienne PREND_LA_VALEUR (xU*(y-yA)-yU(x-xA))
AFFICHER* "Une équation cartésienne de cette droite est :"
AFFICHER* Cartésienne
FIN_SI
SI (Entrer_choix==0) ALORS
DEBUT_SI
AFFICHER* "Vous avez choisi de quitter le programme. Au revoir"
FIN_SI
FIN_SI
SINON
DEBUT_SINON
AFFICHER "Ce choix ne correspond pas à une commande"
FIN_SINON
FIN_TANT_QUE
AFFICHER* "Ce choix ne correspond pas à une commande"
FIN_ALGORITHME



pascal16
Membre Légendaire
Messages: 6663
Enregistré le: 01 Mar 2017, 12:58
Localisation: Angoulème : Ville de la BD et du FFA. gare TGV

Re: algorithme vecteurs

par pascal16 » 29 Oct 2017, 21:33

LIRE xA
LIRE yA
LIRE xU
LIRE yU
Equation cartésienne PREND_LA_VALEUR (xU*(y-yA)-yU(x-xA))

tu fais un mélange chiffres / chaine de caractère.

tu peux mettre ton équation sous la forme y=ax et ensuite
afficher "y=ax+b" -saut de ligne-
afficher "a=", afficher (le résultat du calcul) -saut de ligne-
afficher "b=", afficher (le résultat du calcul) -saut de ligne-

tu peux rajouter le cas de le droite verticale

mama00165
Membre Naturel
Messages: 37
Enregistré le: 23 Sep 2017, 21:56

Re: algorithme vecteurs

par mama00165 » 30 Oct 2017, 15:13

Excuse moi je n'ai pas bien compris ce que vous vouliez dire
car même si je déclare y et x en chaine et que je met "equation cartésienne prend la valeur y=ax" ça ne fonctionne pas
à moins que j'ai mal compris

pascal16
Membre Légendaire
Messages: 6663
Enregistré le: 01 Mar 2017, 12:58
Localisation: Angoulème : Ville de la BD et du FFA. gare TGV

Re: algorithme vecteurs

par pascal16 » 30 Oct 2017, 15:43

L'idée c'est ça (j'ai pas traité les 2 pts confondus):
LIRE xA
LIRE yA
LIRE xU
LIRE yU

si xA== xU, afficher "droite verticale d'équation x= a"
_ a=xA
_ afficher a
sinon
_ a= (yA-yU)/(xA-xU)
_ b= yA-axA
_ "droite verticale d'équation y= ax+b"
_ afficher a
_ afficher b

En informatique, il est possible de mélanger chiffres et caractères, mais il faut tout convertir en chaîne de caractère ou faire appelle à des procédures toutes faites du genre "afficher y= %1 x + %2", a, b".

 

Retourner vers ✎✎ Lycée

Qui est en ligne

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

Tu pars déja ?



Fais toi aider gratuitement sur Maths-forum !

Créé un compte en 1 minute et pose ta question dans le forum ;-)
Inscription gratuite

Identification

Pas encore inscrit ?

Ou identifiez-vous :

Inscription gratuite