dOsSpr0uTosS
Messages postés90Date d'inscriptiondimanche 22 mai 2005StatutMembreDernière intervention 1 janvier 2006
-
1 janv. 2006 à 18:07
cs_Matt67
Messages postés549Date d'inscriptionsamedi 6 septembre 2003StatutMembreDernière intervention 6 mars 2010
-
1 janv. 2006 à 20:25
salut à tous,
je débute en c en pour m'entrainé j'ai commencé un jeu d'allumettes, mais il plante pendant l'execution et j'ai beau chercher je ne trouve pas la solution (le code est assez incompréhensible ...
#include <cstdlib>
#include
#include <time.h>
using namespace std;
int main(int argc, char *argv[])
{
g2:;
long l1=12;
long l2;
long l3;
long l4;
long l5;
long l6;
const long MAX 1, MIN 2;
const long MAX2 3, MIN2 1;
printf("Jeu d'allumettes\n");
while (l1>0)
{
g1:;
printf("\ncombien d'allumettes voulez-vous enlevez?\n");
scanf("%ld",&l2);
if (l2>3)
{
printf("vous ne pouvez enlever que trois allumettes dans un meme tour\n");
goto g1;
}
l1=l1-l2;
printf("il reste %ld allumettes\n",l1);
l3=l1;
while (l3>0)
{
printf("|");
l3--;
}
if (l1==1)
{
printf("\nvous avez gagné \n 1 rejouer \n 2 quitter");
scanf("%ld",&l6);
switch (l6)
{
case 1:
goto g2;
break;
case 2:
system("PAUSE");
return EXIT_SUCCESS;
break;
}
}
srand(time(NULL));
l5 = (rand() % (MAX - MIN + 1)) + MIN;
if (l5=1)
{
l2 = l1 % 4;
l2 = 3 - l2;
if (l2=0)
{
l2=1;
}
}
if (l5=2)
{
srand(time(NULL));
l5 = (rand() % (MAX - MIN + 1)) + MIN;
l5=l2;
}
l1=l1-l2;
printf("il reste %ld allumettes",l1);
l3=l1;
while (l3>0)
{
printf("|");
l3--;
}
if (l1==1)
{
printf("\n vous avez perdu \n 1 rejouer \n 2 quitter");
scanf("%ld",&l6);
switch (l6)
{
case 1:
goto g2;
break;
case 2:
system("PAUSE");
return EXIT_SUCCESS;
break;
}
}
}
system("PAUSE");
return EXIT_SUCCESS;
}
le programme plante au moment où il vérifie sur l1 est égale à 1, enfin je pense
nightlord666
Messages postés746Date d'inscriptionvendredi 17 juin 2005StatutMembreDernière intervention23 mai 200710 1 janv. 2006 à 18:54
Deja, je peut te dire que les goto, ce n'est utilisé qu'en BASIC, et pas en C++ ! Ensuite, tu devrais mieux nommer tes variables (l1 à 6, pas très clair...). Ensuite, essaye de debugger ton programme avec un IDE, ça pourrait t'aider.