Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#26 Le 22/11/2014, à 19:12

dragonito

Re : programmation, faire un jeu avec le nombre mystère

Salut Clément v . je viens de lire ton msg.
Je vais essayer de répondre pourquoi j'ai mis while en fin de boucle , je voulais tout simplement en choix de fin soit faire  continuer soit retourner au menu soit arrête .
Pourquoi ils ne sont pas affecter dans la boucle  ben heu par exemple je n'arrive pas a revenir en fin de partie au menu si je met  tout en haut dans  choix du Niveau .
Je pensais que le break, en fin de partie aller me ramenais au Niveau et que je pourrais alors faire le choix mais non il veux pas , donc j'ai essayer while, ben il veux pas ( heu en fait a force d'essayer plein de truc j'avais le reste de mes tests qui n’étaient pas effacer toujours dans ma fonction) ; Oui je suis dissipé ^^"

Hors ligne

#27 Le 23/11/2014, à 00:30

Clémentv

Re : programmation, faire un jeu avec le nombre mystère

Je n'avais même pas repérer les break. Un break à la fin de la boucle enlève tout son intérêt à la boucle. break sert à sortir de la boucle ou du switch qui le contient (et seulement celui-ci pas d'autres boucles/switchs qui contiennent la boucle/switch en question). Je ne te conseille pas trop d'utiliser le break (ou le continue) tant que tu ne maitrise pas mieux les boucles, à part pour le switch pour lequel tu es obligé d'utiliser le break.

N'hésite pas à simplifier tes exercices si tu as des difficultés, tu pourras revenir à ton cas difficile plus tard. En informatique, les problèmes sont très complexes (pas seulement par rapport à un niveau de débutant mais dans l'absolu). Devenir bon en informatique, c'est surtout savoir décomposer des problèmes complexes en sous-problèmes (un peu) plus simple. À force, on arrive à retrouver des problèmes simples. Dans ton cas, tu peux par exemple faire d'un coté un jeu du nombre mystère avec une seule partie (il me semble que tu l'as déjà fait), et d'un autre coté un menu qui ne fait rien à part afficher qu'il a bien compris le choix de l'utilisateur en boucle. Ensuite tu pourras essayer de combiner les deux. Pense aussi à utiliser les fonctions pour mettre en évidence cette décomposition.

Si tu n'as pas déjà vu les fonctions, apprend la syntaxe et commence par des exercices très simple comme : faire une fonction qui affiche "Bonjour, tout le monde !", une fonction qui affiche un nombre passé en paramètres, une fonction mathématique qui renvoie le résultat d'un calcul avec les valeurs passées en paramètres, ...

Quant aux lignes de codes oubliées, c'est aussi pour ça que je te conseille de bien soigner la mise en forme de ton code. Ça ne sert pas qu'à faire plaisir à ceux qui vont te relire mais aussi pour que toi tu t'y retrouve plus facilement. D'ailleurs, avec l'apprentissage pratique de la programmation et il est aussi important d'apprendre à bien utiliser son éditeur de texte ou en trouver un bon. Un bon éditeur pour la programmation t'aidera à organiser et à mieux t'orienter dans ton code : coloration syntaxique, indentation automatique, mise en évidence des parenthèses/accolodes correspondantes ou des blocs de codes.

Hors ligne

#28 Le 23/11/2014, à 12:03

dragonito

Re : programmation, faire un jeu avec le nombre mystère

Voilà ce que j'ai trouvé pour faire une boucle
  int main ( int argc, char** argv )
{
    int nouvellepartie=1;
    while(nouvellepartie)

   {int nouvellepartie =0, nombreEntre = 0,nombreMystere = 0 ;
     const int MAX = 100, MIN = 1;
      srand(time(NULL));
     nombreMystere = (rand() % (MAX - MIN + 1)) + MIN;
     do{ printf("Quel est le nombre ? ");
        scanf("%d",&nombreEntre);
        if (nombreMystere > nombreEntre)
            printf("C'est plus !\n\n");
        else if (nombreMystere < nombreEntre)
            printf("C'est moins !\n\n");
        else
            printf ("Bingo !!!\n\n");
        }while (nombreEntre != nombreMystere);
            printf("voulez vous recommencer ?\n\n");
            printf("0 = oui / 1 Arreter \n\n");
            scanf("%d" ,&nouvellepartie);
     nouvellepartie=0;
    }
return 0;
}

Mais, en fin de partie, c'est vrai que si je tape 2 (il en a rien a faire le bougre -_-"), mais c'est déja une avancée

Hors ligne

#29 Le 23/11/2014, à 17:03

dragonito

Re : programmation, faire un jeu avec le nombre mystère

j'ai tester autre chose , assé simple ..{
int age = 1, sexe =0;

    printf("Quel es votre age ?");
    scanf("%d",&age);
    printf("\n\n");

if(age <= 17)
   printf ("vous etes mineur !!!\n\n");
else if(age>=18)

  {  int age =0, sexe=0;
      printf ("Vous etes majeur !\n");
      printf("Quel es votre sexe ? 1. homme ,2. femme ");
      scanf("%d",&sexe);
      printf("\n\n");
      if (sexe==1)
      printf ("vous etes un homme\n\n");
      else if (sexe==2)
      printf("vous etes une femme ");
   }
   if (age <= 17 || sexe == 2)
    printf("Accés non autorisé  !");
   else if(age >=18 || sexe == 1)
    printf("Bienvenue \n\n");


}
Je m’aperçois, que while m’empêche de continuer ou même else if si je veux faire un retour au menu (pour else if ) ou pour rentré un autre condition après while ....

Hors ligne

#30 Le 23/11/2014, à 19:37

Clémentv

Re : programmation, faire un jeu avec le nombre mystère

Attention aux redécalrations de variables locales. Tu peux faire deux choses :
-- Si tu veux pas trop y penser pour l'instant, ne déclare tes variables qu'au début de la fonction.
-- Si tu veux tout comprendre, renseigne toi sur la portée et la visibilité des variables en C.

Sinon, toujours et encore, relis ton programme avec soin, la machine ne fait que ce tu lui demandes. Si tu veux bien comprendre ce qui se passe, exécute ton programme de tête (ou sur papier) ou utilises un débuggueur pas à pas.

Dernière modification par Clémentv (Le 23/11/2014, à 19:37)

Hors ligne