Pb de sous programme

blacktanker Messages postés 8 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 2 septembre 2009 - 26 avril 2008 à 14:58
blacktanker Messages postés 8 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 2 septembre 2009 - 12 mai 2008 à 11:09
bonjours a tous voila mon problème je voudrait que à la ligne 78 quand l'utilisateur appui sur la touche 'a' mon sous programme ce lance mais je n'arive pas à l'appeler vous pouvez m'aidez? (je veut enlevé les lignes 80 à 83 et les remplacer par l'appel)
#include <winbgim.h>
int resultat()
{
      int i;
      
      initwindow(790,570);
      setbkcolor(GREEN);
      cleardevice();
      setcolor(RED);
      settextstyle(10,0,12);
      outtextxy(160,175,"Bravo");
      setlinestyle(0, 0, 6);
      line(50, 100, 130, 190);
      delay(50);
      line(50, 250, 130, 190);
      delay(50);
      line(50, 250, 130, 300);
      delay(50);
      line(130, 300, 50, 400);
      delay(50);
      line(50, 400, 250, 330);
      delay(50);
      line(250, 330, 330, 400);
      delay(50);
      line(330, 400, 420, 330);
      delay(50);
      line(420, 330, 500, 400);
      delay(50);
      line(580, 330, 500, 400);
      delay(50);
      line(580, 330, 750, 400);
      delay(50);
      line(750, 400, 655, 300);
      delay(50);
      line(655, 300, 750, 250);
      delay(50);
      line(750, 250, 655, 170);
      delay(50);
      line(655, 170, 750, 100);
      delay(100);
      line(750, 100, 560, 170);
      delay(100);
      line(560, 170, 470, 100);
      delay(100);
      line(470, 100, 390, 170);
      delay(100);
      line(390, 170, 310, 100);
      delay(100);
      line(310, 100, 230, 170);
      delay(100);
      line(230, 170, 50, 100);
      for (i=0;i<=15;i++)
      {   setcolor(i);
          settextstyle(6, 0, 4);
          outtextxy(220, 430, "Vous gagnez 1 point");
          settextstyle(10,0,12);
          outtextxy(160,175,"Bravo");
          delay(100);
      }


}
main()
{
      char r;
      initwindow(790,570);
      setbkcolor(GREEN);
      cleardevice();
      setcolor(BLUE);
      settextstyle(6,0,1);
      outtextxy(25,275,"Bonjour et bienvenue dans mon nouveau jeu");
      outtextxy(25,305,"Pour répondre appuyer sur la touche correspondant à votre choix");
      outtextxy(75,365,"Question 1 :  combien font 3.5 + 3.5?");
      outtextxy(95,395,"a: 7");
      outtextxy(95,425,"b: 5");
      outtextxy(95,455,"c: 6");
      outtextxy(95,485,"d: milou");
      r=(char) getch();
      if (r == 'a')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"Bravo");
      }
      else if (r == 'b')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"nul");
      }
      else if (r == 'c')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"nul");
      }
      else if (r == 'd')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"nul");
      }
      delay(2000);
      cleardevice();
      setcolor(BLUE);
      settextstyle(6,0,1);
      outtextxy(75,365,"Question 2 :  comment dit-on une encre en anglais?");
      outtextxy(95,395,"a: an encore ");
      outtextxy(95,425,"b: a ancore");
      outtextxy(95,455,"c: an ancore");
      outtextxy(95,485,"d: a encore");
      r=(char) getch();
      if (r == 'a')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"perdu");
      }
      else if (r == 'b')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"faux");
      }
      else if (r == 'c')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"correct");
      }
      else if (r == 'd')
      {
           cleardevice();
           setcolor(RED);
           settextstyle(6,0,6);
           outtextxy(90,230,"c'est pas ça");
      }
     
     delay(5000);   
      closegraph();
      system("PAUSE");
}

6 réponses

cs_jfrancois Messages postés 482 Date d'inscription vendredi 26 août 2005 Statut Membre Dernière intervention 5 décembre 2009 2
26 avril 2008 à 15:09
Bonjour,

Question 2 :
encre = ink
ancre = anchora b c = d = faux !

Jean-François
0
blacktanker Messages postés 8 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 2 septembre 2009
2 mai 2008 à 11:05
merci pour cet oublie mais sinon personne n'a d'idée?
0
cs_jfrancois Messages postés 482 Date d'inscription vendredi 26 août 2005 Statut Membre Dernière intervention 5 décembre 2009 2
2 mai 2008 à 11:23
Ca ne suffit pas ?

if (r == 'a')
{
   resultat(); // gagné
}
else if (r == 'b')
{
   ...
     
D'autre part resultat() est sensé retourné un entier ! il manque genre return 0; à la fin ou alors passer resultat() en void, ce qui serait plus logique ici.
Jean-François
0
blacktanker Messages postés 8 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 2 septembre 2009
4 mai 2008 à 18:16
merci sa marche presque sauf que le problème est que j'obtient en appuyant sur 'a' une fenetre noire.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_jfrancois Messages postés 482 Date d'inscription vendredi 26 août 2005 Statut Membre Dernière intervention 5 décembre 2009 2
4 mai 2008 à 18:50
Ne connaissant pas la librairie winbgim, je ne peux pas en dire plus sur son utilisation !

Jean-François
0
blacktanker Messages postés 8 Date d'inscription dimanche 10 février 2008 Statut Membre Dernière intervention 2 septembre 2009
12 mai 2008 à 11:09
Je te remercie jfrancois de t'être pencher sur mon problème. Dans le cas ou je ne puisse parvenir à faire de sous programme et bien tant pis je ferai du copier coller. Jespère que quelqu'un pourra m'aider avant ^^.
0