Message d'erreur : programmation en console
Résolu/Fermé
coleturner
Messages postés
35
Date d'inscription
samedi 15 mars 2008
Statut
Membre
Dernière intervention
20 avril 2008
-
18 mars 2008 à 19:22
coleturner Messages postés 35 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 avril 2008 - 18 mars 2008 à 22:49
coleturner Messages postés 35 Date d'inscription samedi 15 mars 2008 Statut Membre Dernière intervention 20 avril 2008 - 18 mars 2008 à 22:49
A voir également:
- Message d'erreur : programmation en console
- Message - Guide
- Erreur 0x80070643 - Accueil - Windows
- Recuperer message whatsapp supprimé - Guide
- Message d'absence thunderbird - Guide
- Erreur 0x80070643 Windows 10 : comment résoudre le problème de la mise à jour KB5001716 - Accueil - Windows
10 réponses
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
18 mars 2008 à 19:29
18 mars 2008 à 19:29
Bonjour,
Il serait bien de saisir le niveau de jeu avant de déterminer le nombre mystère !!! non ?
;o)
Polux
Il serait bien de saisir le niveau de jeu avant de déterminer le nombre mystère !!! non ?
;o)
Polux
Mahmah
Messages postés
496
Date d'inscription
lundi 17 septembre 2007
Statut
Membre
Dernière intervention
22 juin 2010
125
18 mars 2008 à 19:46
18 mars 2008 à 19:46
Salutations,
Le dit message d'erreur aurait pu aider. Il m'a sauté à la gueule quand j'ai lancé le programme.
Il a planté sur cette ligne:
NombreMystere = (rand() % (nombreMaximum - MIN + 1)) + MIN;
Division par zéro.
nombreMaximum vaut 0, MIN vaut 1, le modulo zéro plante.
En sautant la ligne...
Le niveau de difficulté est demandé à chaque tour de jeu.
Le switch est inopérant. (les instructions du type nombreMaximum <= 100; ne font rien)
M.
Le dit message d'erreur aurait pu aider. Il m'a sauté à la gueule quand j'ai lancé le programme.
Il a planté sur cette ligne:
NombreMystere = (rand() % (nombreMaximum - MIN + 1)) + MIN;
Division par zéro.
nombreMaximum vaut 0, MIN vaut 1, le modulo zéro plante.
En sautant la ligne...
Le niveau de difficulté est demandé à chaque tour de jeu.
Le switch est inopérant. (les instructions du type nombreMaximum <= 100; ne font rien)
M.
coleturner
Messages postés
35
Date d'inscription
samedi 15 mars 2008
Statut
Membre
Dernière intervention
20 avril 2008
2
18 mars 2008 à 20:04
18 mars 2008 à 20:04
j'ai changé, et maintenant il me met comme nombre mystere le numero de la difficulté :o
par exemple niveau 1 ; nombre mystere = 1
voila ce que j'ai fait
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char *argv[])
{
int ContinuerPartie = 1;
while(ContinuerPartie != 0)
{
long NombreEntre = 0, NombreDeCoups = 1;
const long MIN = 1;
long nombreMaximum = 0;
printf("Voici les 3 niveaux de difficultés que vous pourriez choisir :\n\n");
printf("1. de 0 a 100\n");
printf("2. de 0 a 1 000\n");
printf("3. de 0 a 10 000\n\n");
printf("quel niveau voulez-vou choisir?");
scanf("%ld", &nombreMaximum);
switch(nombreMaximum)
{
case 1:
nombreMaximum <= 100;
break;
case 2:
nombreMaximum <= 1000;
break;
case 3:
nombreMaximum <= 10000;
break;
}
long NombreMystere = 0;
srand(time(NULL));
NombreMystere = (rand() % (nombreMaximum - MIN + 1)) + MIN;
do
{
printf("Entrez le nombre mystere : ");
scanf("%ld", &NombreEntre);
printf("\n");
if (NombreEntre < NombreMystere)
printf("C'est plus\n");
else if (NombreEntre > NombreMystere)
printf("C'est moins\n");
else
printf("Bravo vous avez trouvez le nombre Mystere en %ld foi(s)\n\n", NombreDeCoups);
NombreDeCoups++;
} while(NombreEntre != NombreMystere);
printf("voulez-vous recommencer?\n\n");
printf("1. oui\n");
printf("0. non\n");
printf("Que decidez-vous? ");
scanf("%ld", &ContinuerPartie);
printf("\n\n");
}
system("PAUSE");
return 0;
}
par exemple niveau 1 ; nombre mystere = 1
voila ce que j'ai fait
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main(int argc, char *argv[])
{
int ContinuerPartie = 1;
while(ContinuerPartie != 0)
{
long NombreEntre = 0, NombreDeCoups = 1;
const long MIN = 1;
long nombreMaximum = 0;
printf("Voici les 3 niveaux de difficultés que vous pourriez choisir :\n\n");
printf("1. de 0 a 100\n");
printf("2. de 0 a 1 000\n");
printf("3. de 0 a 10 000\n\n");
printf("quel niveau voulez-vou choisir?");
scanf("%ld", &nombreMaximum);
switch(nombreMaximum)
{
case 1:
nombreMaximum <= 100;
break;
case 2:
nombreMaximum <= 1000;
break;
case 3:
nombreMaximum <= 10000;
break;
}
long NombreMystere = 0;
srand(time(NULL));
NombreMystere = (rand() % (nombreMaximum - MIN + 1)) + MIN;
do
{
printf("Entrez le nombre mystere : ");
scanf("%ld", &NombreEntre);
printf("\n");
if (NombreEntre < NombreMystere)
printf("C'est plus\n");
else if (NombreEntre > NombreMystere)
printf("C'est moins\n");
else
printf("Bravo vous avez trouvez le nombre Mystere en %ld foi(s)\n\n", NombreDeCoups);
NombreDeCoups++;
} while(NombreEntre != NombreMystere);
printf("voulez-vous recommencer?\n\n");
printf("1. oui\n");
printf("0. non\n");
printf("Que decidez-vous? ");
scanf("%ld", &ContinuerPartie);
printf("\n\n");
}
system("PAUSE");
return 0;
}
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
18 mars 2008 à 20:13
18 mars 2008 à 20:13
après ton switch fait un printf du nombreMaximum pour voir sa valeur ... je ne crois pas qu'il contienne quelque chose
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Mahmah
Messages postés
496
Date d'inscription
lundi 17 septembre 2007
Statut
Membre
Dernière intervention
22 juin 2010
125
18 mars 2008 à 20:30
18 mars 2008 à 20:30
Toujours le problème du switch qui contient des instructions inopérantes.
M.
M.
coleturner
Messages postés
35
Date d'inscription
samedi 15 mars 2008
Statut
Membre
Dernière intervention
20 avril 2008
2
18 mars 2008 à 20:57
18 mars 2008 à 20:57
le nombre max apres le switch est le numero de la difficulté :o
coleturner
Messages postés
35
Date d'inscription
samedi 15 mars 2008
Statut
Membre
Dernière intervention
20 avril 2008
2
18 mars 2008 à 21:00
18 mars 2008 à 21:00
comment je pourrai changer les instructions du switch, pour que ça marche?
Mahmah
Messages postés
496
Date d'inscription
lundi 17 septembre 2007
Statut
Membre
Dernière intervention
22 juin 2010
125
18 mars 2008 à 21:17
18 mars 2008 à 21:17
En remplaçant les nombreMaximum <= 100; par nombreMax = 100;
C'est valide mais ça ne fait rien...
C'est un peu équivalent à
ou même à
C'est des instructions, ça compile mais c'est tout. D'ailleurs la plus part des compilateurs ne compilerons pas de code pour ces lignes là.
M.
int main(void) { int i = 2; i > 4; return 0; }
C'est valide mais ça ne fait rien...
C'est un peu équivalent à
int main(void) { 6; return 0; }
ou même à
int main(void) { ; return 0; }
C'est des instructions, ça compile mais c'est tout. D'ailleurs la plus part des compilateurs ne compilerons pas de code pour ces lignes là.
M.
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 204
18 mars 2008 à 21:03
18 mars 2008 à 21:03
sauf que là tu ne donnes aucune valeur à nombreMaximum
coleturner
Messages postés
35
Date d'inscription
samedi 15 mars 2008
Statut
Membre
Dernière intervention
20 avril 2008
2
18 mars 2008 à 21:05
18 mars 2008 à 21:05
c'est une variable, donc 0 non?
coleturner
Messages postés
35
Date d'inscription
samedi 15 mars 2008
Statut
Membre
Dernière intervention
20 avril 2008
2
18 mars 2008 à 22:49
18 mars 2008 à 22:49
ha oui... ro la la une erreur super bête. effectivement nombre max = 100 ou 1000 ou 10000 mais pas <=
c'est une erreur vrément bete qui plante tout... je suis bete bete bete
en tous les cas, merci a vous, je vous adore ;)
c'est une erreur vrément bete qui plante tout... je suis bete bete bete
en tous les cas, merci a vous, je vous adore ;)