IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Turbo Pascal Discussion :

[TP] Tracer un triangle


Sujet :

Turbo Pascal

  1. #1
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 14
    Points
    14
    Par défaut [TP] Tracer un triangle
    Bonjour à tous, voilà : l'utilisateur entre les trois longueurs en cm d'un triangle.
    Je voudrais tracer ce triangle (en mode graph).
    Comme je débute, j'ai un peu de mal : tracer une ligne ok, mais un triangle...

  2. #2
    Responsable Pascal, Lazarus et Assembleur


    Avatar de Alcatîz
    Homme Profil pro
    Ressources humaines
    Inscrit en
    Mars 2003
    Messages
    7 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : Belgique

    Informations professionnelles :
    Activité : Ressources humaines
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2003
    Messages : 7 964
    Points : 59 673
    Points
    59 673
    Billets dans le blog
    2
    Par défaut
    Bonjour !

    A partir du moment où les coordonnées des sommets ont été calculées, il suffit de... dessiner trois lignes, comme dans l'exemple trouvé sur ce fil de discussion : http://www.developpez.net/forums/sho...light=triangle


    A moins que le problème réside dans le calcul des coordonnées ?

  3. #3
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 14
    Points
    14
    Par défaut
    oui , je n'arrive pas a calculer les cordonnées du sommet.
    y doit surment avoir une formules ...
    apres relier les points ca je devrai y arrivai.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Octobre 2004
    Messages
    633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2004
    Messages : 633
    Points : 711
    Points
    711
    Par défaut
    Bonjour,

    Montre nous ce que tu as fait, on ne fera pas le travail à ta place.

    D'autre part, donner les longueurs des 3 côtés d'un triangle pour le tracer risque de te poser un gros problème : il faut que les 3 valeurs entrées définissent effectivement un triangle, ce qui, en dehors des triangles équilatéraux, et de ceux dont les côtés sont des valeurs entières (comme le célèbre triplet 3,4,5), ou des triangles rectangle qui vérifient a^2 + b^2 = c^, qui sont aisément calculables, il faut les avoir calculés pour les connaître, et de plus, dans tous les cas, l'algorithme de vérification de la validité des valeurs risque d'échouer (sauf uniquement entiers), pour cause de précision de la représentation des valeurs dans un ordinateur.

  5. #5
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,

    soit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c=|AB|, a=|BC| et b=|AC|
    On place par exemple le coté AB en horizontal avec :
    pour détermner les coord de C, on sait que :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    dist(C,A)=b et dist(C,B)=a
    ce qui donne (en mettant X=Xc et Y=Yc pour mieux identifier les inconnues) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sqr(X)+sqr(Y)=sqr(b)
    sqr(X-c)+sqr(Y)=sqr(a)
    Je laisse la fin à vos bon soins

  6. #6
    Membre à l'essai
    Inscrit en
    Octobre 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 26
    Points : 14
    Points
    14
    Par défaut
    ca ne sert a rien que je montre mon prog puisque a part entrer les valeurs, determiné le plus grand(pr l'hypotenuse), je n'est rien d'autre.
    ma logique est la suivante (HHuummHHumm) :

    - c1,c2,hyp : sont entré par l'utilisateur.

    - je met le plus grands des nombre ds l'hypotenuse .

    - ensuite, pour tracer mon triangle, il me suffit de :

    - tracer l'hypotenuse
    - tracer un arc de cercle de rayon (c1) a partir du point
    de depart de l'hypo
    - tracer un autre arc de cercle de rayon (c2) a partir de la
    fin de l'hypo

    --> a ce stade j'ai un point d'intersection
    mais comment avoir les cordonnées d'une intersection de deux arc ??

    Moi c'est la que je but.

    Voila, pour ce qui est du calcul d'erreur,je peut mettre une egalité au centième pres par exemple.

    Merci pour tt ceux qui prennent le tps pour aider les autres.
    C'est sur je ne veux pas d'une reponse toute faite, c'est avant tout pour apprendre que je me suis posé ce problème.
    Je debute, merci de votre comprehension.

  7. #7
    Expert éminent Avatar de Graffito
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    5 993
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 5 993
    Points : 7 903
    Points
    7 903
    Par défaut
    Bonjour,
    bon je continue depuis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    sqr(X)+sqr(Y)=sqr(b)
    sqr(X-c)+sqr(Y)=sqr(a)Je laisse la fin à vos bon soins
    Nota :SQR(r)=r * r

    d'où sauf erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    sqr(X)-sqr(X-c)=sqr(b)-sqr(a)
    ==> 2*X*c = sqr(b)-sqr(a)-sqr(c)
    ==> X=(sqr(b)-sqr(a)-sqr(c))/2*c
    Je laisse la fin (détermination de Y) à vos bon soins

  8. #8
    Membre confirmé
    Avatar de diden138
    Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    714
    Détails du profil
    Informations personnelles :
    Âge : 35
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2006
    Messages : 714
    Points : 589
    Points
    589
    Par défaut Re:
    à mon avis pour dessiner un triangle il faut faire simple tu demande à l'utilisateur d'entrer les trois cordonnée des trois points(a,b,c) et puis aprés tu relies tes trois points sinon si tu demande juste à l'utilisateur d'entrer juste la taille en cm de chaque coté t'aura du mal à dessiner ton triangle et n'oublie pas que tu travail en pixel pas en centimetre et la conversion entre les deux est assez complexe (résolution de l'écran,pitch).

    voici un petit code que j'ai travaillé il illustre ce que j'ai dit(il marche sous freepascal tu pe facilement l'adapter pour tp7)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Program triangle;
    uses crt,graph;
    var
        driver,mode:integer;
        ax,ay,bx,by,cx,cy:byte;
    
    begin
           write('veuillez entrer les trois cordon‚es');
           read(ax); readln(ay);
           readln(bx); readln(by);
           readln(cx);readln(cy);
           driver:=vga;mode:=vgahi;
           initgraph(driver,mode,'triangle');
           outtextxy(20,20,'Dessin du triagnle');
           line(ax,ay,bx,by);
           setcolor(red);
           line(ax,ay,cx,cy);
           setcolor(green);
           line(bx,by,cx,cy);
           readln;readln;
           closegraph();
    end.

Discussions similaires

  1. tracer triangle avec une boucle
    Par karika dans le forum MATLAB
    Réponses: 1
    Dernier message: 23/05/2011, 20h42
  2. Tracer un triangle en Java
    Par amrinfo dans le forum Interfaces Graphiques en Java
    Réponses: 2
    Dernier message: 03/05/2011, 14h58
  3. [débutant] tracer et colorier des triangles
    Par 20100. dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 22/05/2008, 23h56
  4. Tracer une ligne droite sans les interruptions
    Par Stef784ever dans le forum x86 16-bits
    Réponses: 4
    Dernier message: 25/11/2002, 01h22
  5. [3D] Triangles
    Par Frederic dans le forum Algorithmes et structures de données
    Réponses: 6
    Dernier message: 08/11/2002, 23h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo