Inscription / Connexion Nouveau Sujet
Niveau seconde
Partager :

algorithme

Posté par
azzedines
24-02-18 à 12:43

Salut je suis entrain de faire mon DM de maths à faire pour la rentée et là je suis coincée il me demande d'écrire un algorithme ( les algorithmes c'est pas trop mon truc ).

Voici l'énoncé: Ecrire un algorithme qui, quand on entre les coordonnées xA, yA, xB, yB, et xC, yC de trois points A, B et C détermine si le triangle est rectangle en A.

Et ensuite en 2), il me demande a peu près la même chose:
Ecrire un algorithme qui, quand on entre les coordonnées xA, yA, xB, yB, et xC, yC de trois points A, B et C détermine si le triangle est rectangle.

Merci d'avance pour votre aide.

Posté par
azzedines
re : algorithme 24-02-18 à 12:50

Pour le 1) est ce que je dois donner la formule pour trouver les longueurs dans un repère orthonormé puis citer Pythagore ???

Posté par
sanantonio312
re : algorithme 24-02-18 à 12:50

Bonjour,
Dans les deux cas, avant d'écrire un algorithme, tu dois chercher comment répondre à la question posée?
Avec les coordonnées, comment fais-tu pour déterminer si le triangle est rectangle en A?

Posté par
sanantonio312
re : algorithme 24-02-18 à 12:51

Oui, Pythagore est une technique possible.

Posté par
azzedines
re : algorithme 24-02-18 à 12:59

Déja je commence par calculer les 3 longueurs avec la formule par exemple pour AB racine de (xB-xA)2 + (yB-yA)2 ensuite je fais Pythagore

Posté par
sanantonio312
re : algorithme 24-02-18 à 13:09

Oui.
Mais quand tu dis:

Citation :
ensuite je fais Pythagore

ça signifie que tu fais un calcul et que tu vérifie si une égalité est respectée.

Posté par
sanantonio312
re : algorithme 24-02-18 à 13:09

Oups;;;
... tu vérifies ...

Posté par
azzedines
re : algorithme 24-02-18 à 13:18

Oui je dis par exemple:
si les longueur de  AB2 et AC2 additionnées entre elles sont égales au carré de BC, le triangle ABC est rectangle en A.

Mais tout sa avec des termes plus appropriés.

Posté par
azzedines
re : algorithme 24-02-18 à 13:21

azzedines @ 24-02-2018 à 13:18

Oui je dis par exemple:
si les longueur de  AB2 et AC2 additionnées entre elles sont égales au carré de BC, le triangle ABC est rectangle en A.

Mais tout sa avec des termes plus appropriés.


Enfin je crois

Posté par
sanantonio312
re : algorithme 24-02-18 à 13:38

Voilà.
Lance-toi!
On corrigera si nécessaire.

Posté par
azzedines
re : algorithme 24-02-18 à 13:39

Ok merci je le fais et je vous le poste

Posté par
azzedines
re : algorithme 24-02-18 à 13:54

Mais le truc c'est que je sais pas comment le rédiger donc je vais l'écrire à ma manière et ensuite on verra.

Posté par
azzedines
re : algorithme 24-02-18 à 13:59

Est ce que pour la rédaction il y a des mots spéciaux , un alignement, ... ?

Posté par
azzedines
re : algorithme 24-02-18 à 14:00

Car là pour rédiger à ma façon j'ai fais sa et je pense qu'il manque beaucoup de choses.

Le triangle ABC de longueur :
AB= √(xB-xA)2  + (yB-yA)2
AC= √(xC-xA)2 + (yC-yA)2
BC=√(xC-xB)2 + (yC-yB)2

Le triangle ABC est rectangle en A si et seulement si: les longueurs de AB2 et AC2 additionnées entre elles sont égales au carré de BC, le triangle ABC est rectangle en A.

Posté par
azzedines
re : algorithme 24-02-18 à 14:05

Et pour le 2) je pense avoir compris;
Il faut que je calcul les longueurs comme le 1) puis au lieu de dire:
Le triangle ABC est rectangle en A si et seulement si: les longueurs de AB2 et AC2 additionnées entre elles sont égales au carré de BC, le triangle ABC est rectangle en A.

Je dis le triangle ABC est rectangle si le carré des 2 côtés les plus petits sont égaux au carré du côté le plus grand.

Serais-ce cela ?

Posté par
sanantonio312
re : algorithme 24-02-18 à 14:50

Oui, mais ça t'oblige à chercher le  ôte le plus grand.
Une autre technique est de calculer le carré de chaque côté et de le comparer avec la somme des carrés des deux autre côtés.

Posté par
flight
re : algorithme 24-02-18 à 15:18

salut ..un ordre d'idée en language excel

Dim x(), y() As Variant
ReDim x(0 To 2)
   For i = 0 To UBound(x)
     x(i) = InputBox("Saisir la" & " " & i & " " & "ième abscisse")
   Next
ReDim y(0 To 2)
   For i = 0 To UBound(y)
     y(i) = InputBox("Saisir la" & " " & i & " " & "ième ordonnée")
   Next
  
   'calcul :
  
    For k = 0 To 2
      For p = 0 To 2
       If k <> p Then
           z = z * (x(p) - x(k))
           u = u * (y(p) - y(k))
       End If
      Next
      If z + u = 0 Then
      MsgBox "rectangle au point:" & " " & x(k) & "," & y(k)
      Exit Sub
      End If
    Next

Posté par
sanantonio312
re : algorithme 24-02-18 à 17:11

En langage "naturel". En appelant A, B et C les longueurs BC, AC et AB, ton algorithme pourrait ressembler à ça:

Citation :
Variables xA, xB, xC, yA, yB, yC, A, B, C sont des nombres

Demander d'entrer les 6 coordonnées

A=\sqrt{(x_B-x_C)^2+(y_B-y_C)^2}
B=\sqrt{(x_C-x_A)^2+(y_C-y_A)^2}
C=\sqrt{(x_B-x_A)^2+(y_B-y_A)^2}

Si A=B+C alors afficher "triangle rectangle en A"
Sinon  Si B=A+C alors afficher "triangle rectangle en B"
Sinon Si C=A+B alors afficher "triangle rectangle en C"
Sinon afficher "Ce triangle n'est pas rectangle"


A mettre en forme en fonction du langage demandé.

Posté par
azzedines
re : algorithme 25-02-18 à 12:19

sanantonio312 @ 24-02-2018 à 17:11

En langage "naturel". En appelant A, B et C les longueurs BC, AC et AB, ton algorithme pourrait ressembler à ça:

Citation :
Variables xA, xB, xC, yA, yB, yC, A, B, C sont des nombres

Demander d'entrer les 6 coordonnées

A=\sqrt{(x_B-x_C)^2+(y_B-y_C)^2}
B=\sqrt{(x_C-x_A)^2+(y_C-y_A)^2}
C=\sqrt{(x_B-x_A)^2+(y_B-y_A)^2}

Si A=B+C alors afficher "triangle rectangle en A"
Sinon  Si B=A+C alors afficher "triangle rectangle en B"
Sinon Si C=A+B alors afficher "triangle rectangle en C"
Sinon afficher "Ce triangle n'est pas rectangle"


A mettre en forme en fonction du langage demandé.


Ah je vois ce que vous voulez dire merci beaucoup.

Posté par
azzedines
re : algorithme 25-02-18 à 12:21

flight @ 24-02-2018 à 15:18

salut ..un ordre d'idée en language excel

Dim x(), y() As Variant
ReDim x(0 To 2)
   For i = 0 To UBound(x)
     x(i) = InputBox("Saisir la" & " " & i & " " & "ième abscisse")
   Next
ReDim y(0 To 2)
   For i = 0 To UBound(y)
     y(i) = InputBox("Saisir la" & " " & i & " " & "ième ordonnée")
   Next
  
   'calcul :
  
    For k = 0 To 2
      For p = 0 To 2
       If k <> p Then
           z = z * (x(p) - x(k))
           u = u * (y(p) - y(k))
       End If
      Next
      If z + u = 0 Then
      MsgBox "rectangle au point:" & " " & x(k) & "," & y(k)
      Exit Sub
      End If
    Next


Merci mais je n'ai rien compris au langage :o

Posté par
mathafou Moderateur
re : algorithme 25-02-18 à 12:50

Bonjour,

le truc en Excel n'est pas l'énoncé d'origine mais un énoncé plus généraliste qui au final noie le poisson
le vrai énoncé est sommets A, B, C, coordonnéed de A xA et yA etc

et pas
sommets démerdez vous abscisse "du premier sommet", abscisse "du second sommet" etc
et résultat du genre "rectangle en le 3ème sommet"

mais on veut une réponse "rectangle en C" par exemple
donc programme inapproprié pour un débutant et inutilement compliqué dans sa structure à cause d'un important "overhead" (les trucs qu'il fait ajouter un peu partout pour le langage et qui n'ont que peu de rapport avec le problème proprement dit comme des histoires de dimension de tableaux etc)


la réponse de sanantonio312 est bien plus pertinente !
si elle n'était entaché d'une erreur

Citation :
A=\sqrt{(x_B-x_C)^2+(y_B-y_C)^2}
etc
Si A=B+C alors afficher "triangle rectangle en A"

faux
c'est "si A² = B² + C² etc"
mais pourquoi extraire la racine carrée pour devoir élever au carré ensuite ??

mieux :
A=(x_B-x_C)^2+(y_B-y_C)^2
etc
Si A=B+C etc

A, B, C représentant les carrés des cotés et pas les côtés eux même.

Posté par
sanantonio312
re : algorithme 25-02-18 à 15:36

Oui, exact. J'ai écrit une grosse bêtise.
C'est tellement plus simple et juste sans racine carrée.
Merci mathafou.



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1506 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !