Problème boucle et décrémentation
Bonjour à tous,
Je débute en C et j'ai un petit problème dans mon code.
C'est un jeu ou on génère un nombre aléatoire. Le joueur est invité à entrer un nombre, suivant le nombre on lui dit si c'est + ou -.
Mon problème ce trouve dans ma boucle, la décrémentation se passe correctement mais la ou il faudrait sortir de la boucle si le nombre d'essai arrive à 0 le compteur continue en partant dans les négatifs.
Je pense que c'est une simple erreur mais je ne le vois pas.
Merci d'avance pour votre aide :)
code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
srand(time(NULL));
const int MAX = 100, MIN = 1;
int nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
int nombreChoisi = 0;
int rejouer = 1;
// Boucle pour rejouer
while (rejouer == 1)
{
printf ("***PLUS ou MOINS***\n");
printf ("-------------------\n");
printf ("Trouver le nombre mystere(uniquement des nombres entiers compris entre 1 et 100)\n");
printf ("Vous avez 10 essais\n");
// Boucle tant que pour ne pas dépasser 10 et tant que le nombre choisi n'est pas égale au nombre mystère
int essai = 0;
printf("Votre nombre :\n");
scanf("%d",&nombreChoisi);
while (essai < 0 || nombreChoisi != nombreMystere)
{
if (nombreChoisi > nombreMystere)
{
printf("C'est moins\n");
essai--;
printf("Il vous reste %d\n",essai);
printf("Votre nombre :\n");
scanf("%d",&nombreChoisi);
}
else if (nombreChoisi < nombreMystere)
{
printf("c'est plus\n");
essai--;
printf("Il vous reste %d\n",essai);
printf("Votre nombre :\n");
scanf("%d",&nombreChoisi);
}
else
{
printf("BRAVO !!!\n");
}
}
printf("******************\n");
printf("Voulez-vous rejouer\n");
printf("1. Oui\n");
printf("2. Non\n");
scanf("%d",&rejouer);
if (rejouer == 1)
{
int rejouer = 1;
int essai = 10;
}
else
{
printf("Merci d'avoir joue\n");
int rejouer = 0;
}
}
return 0;
} |