Un petit pepin ds le programme

Bonjour,

Voila. Le but est de realiser un petit jeu. L'ordi tire un nb au hasard entre 1 et 100 , l'utilisateur doit le retrouver.
C'est simple, je sais, mais les debutants rencontrent tjs des difficultes exasperantes.

Voici mon code. Je ne sais pas pourquoi l'ordi bloque a la derniere ligne :

int main(int argc, char *argv[])
{
const int MAX = 100, MIN = 1;
int leNombreRentre = 0;
int nombreMystere = 0;

srand(time(NULL));
nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;

if(leNombreRentre > nombreMystere)
{ printf("OULA VOUS Y ALLEZ PEUT ETRE UN PEU FORT LA...\n");}
else if(leNombreRentre < nombreMystere)
{ printf("UN PEU PLUS PEUT ETRE ?\n");}
else(leNombreRentre == nombreMystere)
{ printf("Bravo !!\n");}

do
{
printf("Quel est le nombre mystere ? \n\n");
scanf("%d\n", &leNombreRentre);

}while (leNombreRentre != nombreMystere);

return 0;

}

L'ordi bloque ici:

{ printf("Bravo !!\n");}

Merci de votre aide !

--
Il y a toujours solution a tout.
@+
Configuration: Windows XP SP3 et Vista. 2 Go de RAM, 80 de ROM.

3 réponses

  • Votes
  • Date
  • Date décroissante
  1. tu as mis else(condition).
    sois tu écris else if(condition), soit else{ traitement}, mais pas else (condition)
    1. Salut,

      Ah oui ! C'est les pti trucs comme ca facilement oubliables qui marchent jamais et qui font plaquer tout le programme.

      Merci bcp !
      1. Bonsoir,

        Il doit y avoir d'autres petits problèmes si j'en crois les soucis que j'ai eus lors de la mise au point de ton code !
      2. @cchristianSalut cchristian,

        Euh, je e sais pas si tu es encore la, en tout cas il semblerait que tu ais raison...

        Ben la mon probleme c que le programme marche, certes, mais il bog.

        Explications:

        Je rentre le nombreMystere.

        L'ordi me donne au fur et a mesure des indications pour le trouver. >> Normal

        Cependant, quand l'etau se referme, le nombre n'est plus le meme.. En bref, je marque 35, il me dit que c +.
        Je marque 40, il me dit que c moins, 39, 38, 37, 36, et la, il me dit que c +.

        J'espere avoir ete assez clair, et merci de votre aide !
      3. @raphy00Bonsoir,

        Je suis encore là, essaie cela :

        int main() 
        { 
        const int MAX = 100, MIN = 1; 
        int leNombreRentre = 0; 
        int nombreMystere = 0; 
        
        srand(time(NULL)); 
        nombreMystere = (rand() % (MAX - MIN + 1)) + MIN; 
        
        
        while (leNombreRentre != nombreMystere) 
        { 
          printf ("Quel est le nombre mystere ? \n\n")                  ; 
          scanf  ("%10d", &leNombreRentre, 10)                          ; 
        
          printf  ("\nPour tester : ===> %d ====> %d\n",
        	                              leNombreRentre, nombreMystere); 
        
          if ( leNombreRentre > nombreMystere ) 
            { printf ("OULA VOUS Y ALLEZ PEUT ETRE UN PEU FORT LA...\n");} 
          else 
            {
              if ( leNombreRentre < nombreMystere ) 
                { printf ("UN PEU PLUS PEUT ETRE ?\n")                  ;} 
              else 
        	    {  
        	       leNombreRentre = nombreMystere                        ; 
                       printf ("Bravo !!\n")                                 ;
        	    }
            }
        }
        return 0                                                        ; 
        }
        
      4. @cchristianRe,

        Ah c super que tu sois ecore la !

        Bon, g essaye ton programme, mais la console me fait un affichage eclair, si tu vois ce que je dire...

        Que faire ?
      5. @raphy00Bonjour,

        Je ne comprends pas, chez moi je n'ai pas ce problème.