Probléme de petit jeux en C

Fermé
TiiibOOO - 6 avril 2010 à 11:56
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 - 6 avril 2010 à 13:33

Bonjours a tous, j'ai commencé hier le tuto de Mateo21 sur la programmation en C...
J'ai essayé de reproduire un jeux du TP afin de m'entrainer mais je suis bloquer....
Il me dise que j'ai un probléme ligne 60:Error syntax before "do".
Je vous l'envoi...





#include <stdio.h>
#include <stdlib.h>
#include <time.h>


int main ( int argc, char** argv )
{   int mode = 0, nombreMystere = 0, MIN = 0, nombre_proposer = 0;
    printf("Veut tu jouer en 1 ou 2player?\n\n");
    printf("Je veut jouer en 1 Player\n\n");
    printf("Je veut jouer en 2 Player\n\n");
    scanf("%d", &mode);





    int niveau = 0, coup = 0;
    printf("Salut, c'est mon premier jeu, appele le Plus ou Moins...\n\n\n");
    printf("***Niveau***\n\n");
    printf("Niveau 1 : Le nombre a trouver sera entre 1 et 10.\n\n");
    printf("Niveau 2 : Le nombre a trouver sera entre 1 et 100.\n\n");
    printf("Niveau 3 : Le nombre a trouver sera entre 1 et 1000.\n\n");
    printf("Quel niveau veut-tu choisir? Je veut choisir le niveau ");
    scanf("%d", &niveau);
    printf("Ah, tu as choisi le niveau %d.", niveau);

if (niveau == 1)
{
    const int MAX = 10;
    srand(time(NULL));
    nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
if (niveau == 2)
{
    const int MAX = 100;
    srand(time(NULL));
    nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
if (niveau == 3)
{
    const int MAX = 1000;
    srand(time(NULL));
    nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
}
 do
    {
     printf("Proposer un nombre : \n\n");
     scanf("%d", &nombre_proposer);
     coup ++;
     if (nombreMystere < nombre_proposer)
     printf(" Desole, c'est moins ! \n\n\n");
     else if (nombreMystere > nombre_proposer)
     printf(" C'est plus ! ");
     else
     printf("Bien joue, c'est exactement ça !\n\n");
    } while (nombreMystere = nombre_proposer)


do
{
if (coup < 6)
{
  printf ("T'es trop fort ! \n\n");
}
else if ( coup >10 )
{
  printf ("Sa peut aller");
}
else
{
  printf ("Trop d'essai !\n\n");
}
}while (coup > 20)


}
A voir également:

4 réponses

J'ai surligner le do de la ligne 60 :)
0
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
Modifié par xav3601 le 6/04/2010 à 12:02
Je dirais qu'il te faut un ; après ton do{}while précédent!

Je reprend juste la partie concerné dans le code:

else
printf("Bien joue, c'est exactement ça !\n\n");
} while (nombreMystere = nombre_proposer);


do
{
if (coup < 6)
{
Et par le même coup rajoute le à tout tes do while, sinon tu vas reavoir la même erreur ^^

Si je peux me permettre un dernière remarque:

Ca t'affichera "trop d'essai" si tu te situe entre 6 et 10 coup alors que au dela de 10 coups ca t'affiche "ca peut aller" donc y'a un problème dans ton code au niveau fonctionnel^^

La culture c'est comme la confiture, moins en a plus on l'étale!
0
Je ne comprend pas ce que tu veut que je fasse...Peut tu, si possbile, essayer de mieux me l'expliquer...
0
xav3601 Messages postés 3288 Date d'inscription lundi 10 novembre 2008 Statut Membre Dernière intervention 2 mars 2016 311
6 avril 2010 à 13:33
Structure d'un do while:

do{

}while(expression);

La tienne n'est pas bonne...
0