Forum

Catégorie : Programmes
Forum : Les programmes des internautes
Vues : 1103
Réponses : 4
Type : discussion
Etat : réponses autorisées

Triangle ABC rectangle ou non + dessin

pito2901 le 04/05/2013 à 18:17
Bonjour à tous, voici un programme qui permet de dire si un triangle est un point, un segment, rectangle ou non; et qui ensuite dessine le triangle.

Code
EffEcr

Input "XA:",A
Input "YA:",B
Input "XB:",c
Input "YB:",D
Input "XC:",E
Input "YC:",F

EffEcr

If A=C et C=E et B=D et D=F
Then
Disp "LE TRIANGLE EST","UN POINT"
Else

racine carrée(((D-B)²+(C-A)²)->G
racine carrée(((F-B)²+(E-A)²)->H
racine carrée(((F-D)²+(E-C)²)->I
Disp "LE TRIANGLE ABC"
If G²+H²=I² ou H²+I²=G² ou G²+I²=H²
Then
Disp "EST RECTANGLE"
Else
If G+H=I ou G+I=H ou H+I=G
Then
Disp "EST UN SEGMENT
Else
Disp "N EST PAS","RECTANGLE"
End
End
Pause

// je ne préoccupe pas de l'échelle du décalage, je décale de 1
1+max({A,C,E->Xmax
-1+min({A,C,E->Xmin
1+max({B,D,F->Ymax
-1+min({B,D,F->Ymin

Ligne(A,B,C,D
Ligne(A,B,E,F
Ligne(C,D,E,F

// EDIT : fin ci-dessous maintes fois éditée et finalement validée après test.

Ymin-Ymax->S
Xmax-Xmin
Text(int((B-Ymax)*62/S),int((A-Xmin)*94/Rép),"A
Text(int((D-Ymax)*62/S),int((C-Xmin)*94/Rép),"B
Text(int((F-Ymax)*62/S),int((E-Xmin)*94/Rép),"C

EffDessin
Foncton
linkakro le 04/05/2013 à 20:09
Source(s) : https://tout82.pages-perso.fre[...].php?sujet=3759

L'ensemble est vachement bien.

Mais je pense surtout garder en tête l'affichage du texte a côté des points, avec le mal que j'ai eu à l'écrire et encore plus à la tester.
pito2901 le 04/05/2013 à 20:17
Oh. Ce n'est pas un gros souci si le texte est sur les lignes.
linkakro le 04/05/2013 à 20:29
Je veux dire que le texte est à proximité, ce qui n'était pas du tout le cas dans les premières versions.
C'est la méthode que je veux conserver.

Ah, tant que j'y suis, l'idée était déjà bien trouvée avant que je débarque dans ton projet.
pito2901 le 04/05/2013 à 21:08
Merci. Sinon je fais en ce moment le triforce, qui est assez long à faire... Je le posterais dans les jours qui viennent.