Partage
  • Partager sur Facebook
  • Partager sur Twitter

Condition

accéder à une condition supérieur

Anonyme
    26 février 2006 à 16:52:23

    Bonjour tous le monde :)

    Alors voilà, au lieu de faire un long blabla où vous ne comprendrez rien, voici un code magnifique (euh enfin le code à était fait de telle façons que vous compreniez mon problème) :


    if(choixJoueur == 0)
         {
            system("CLS");           
            printf("Bienvenue\n\n");
            printf("Que voulez vous faire?\n");
            printf("1-Dormir\n");
            printf("2-Manger\n");
            printf("3-Programmer\n");
            printf("4-Partie en vacance\n");
            printf("5-Quitter ce logicielle pourri\n");
            scanf("%ld", &choixJoueur);
                   
           
            while(choixJoueur == 1)
            {           
               system("CLS");               
               printf("Ah vous voulez dormir, tres bon choix \n");
               printf("Ou voulez vous dormir ?\n");
               printf("1-Dans un lit\n");
               printf("2-Dans une ecurie\n");
               printf("3-Dans la foret\n");
               scanf("%ld", &choixDormir);           
                                             
               while(choixDormir == 1)
               {               
                  system("CLS");                   
                  printf("Oh vous avez choisit de dormir dans un lit, curieuse facons....\n\n");
                  sleep(1000);
                  printf("Debout feineas! Veut tu faire autre chose ?\n");
                  printf("1-Dormir\n");
                  printf("2-Manger\n");
                  printf("3-Programmer\n");
                  printf("4-Partie en vacance\n");
                  printf("5-Quitter ce logicielle pourri\n");                                                                                                                   
                                 
               }
                     
               while(choixDormir == 2)
               {
                  system("CLS");           
                  printf("Oh vous avez choisit de dormir dans une ecurie! C'est un bon choix.\n\n");
                  sleep(1000)
                  printf("Debout feineas! Veut tu faire autre chose ?\n");
                  printf("1-Dormir\n");
                  printf("2-Manger\n");
                  printf("3-Programmer\n");
                  printf("4-Partie en vacance\n");
                  printf("5-Quitter ce logicielle pourri\n");                 
                  }         
               
               while(choixDormir == 3)
               {
                  system("CLS");           
                  printf("Oh vous avez choisit de dormir dans une foret, faites attention aux loups, sinon c'est un bon choix.\n\n");
                  sleep(1000)
                  printf("Debout feineas! Veut tu faire autre chose ?\n");
                  printf("1-Dormir\n");
                  printf("2-Manger\n");
                  printf("3-Programmer\n");
                  printf("4-Partie en vacance\n");
                  printf("5-Quitter ce logicielle pourri\n");                 
                  }
            }
    }


    Bon alors voilà, mon problème c'est que si par exemple, je choisit en premier de dormir dans les écuries, sa marche (enfin si j'avais fait le code en entier..), mais si après avoir dormit dans les écuries je demande à dormir dans un lit bah la sa ne marche pas... alors que si je demande de dormir dans la forêt bah sa marche... en gros je ne sait pas comment faire pour renvoyer l'utilisateur à une condition placer au dessus de celle qu'il vient d'exploiter (sa me met la phrase pour quitter le programme). Voilà merci d'avance :)

    ps: ce code à était fait à l'arrache en deux minutes pour vous montrer mon problème sans poster 800 lignes (en plus faut déjà que j'aille à un autre pc pour poster un si gros message.).
    • Partager sur Facebook
    • Partager sur Twitter
      26 février 2006 à 18:01:24

      salut, pourquoi tu n'utilise pas if ... à la place de tes while et tu fait une boucle au début qui continu tant que "choixJoueur != 5"

      ps: "logicielle" je crois que ce ne s'écrit pas comme ça :p
      • Partager sur Facebook
      • Partager sur Twitter
        26 février 2006 à 18:14:07

        exact ! étant donné que on rentre dans while si la condition est bonne et on EN SORT ! ( on ne revient aps en arriere ... le code observe une progression en sens unique ...)
        Et donc comme il l'a dit ... utilise des if :)
        • Partager sur Facebook
        • Partager sur Twitter
        Anonyme
          26 février 2006 à 18:34:01

          Bah sa fait pareille avec des if... (d'ailleurs à l'origine c'était des if), donc j'ai fait un mélange de if et de while et sa marche déjà un peut mieux mais sa affiche pas ce que je veut....
          • Partager sur Facebook
          • Partager sur Twitter
            27 février 2006 à 3:20:05

            Salut, vas sur ce topic, les goto permette de se rendre à un endroit du code,tu peux tjs les utiliser pour revenir plus haut dans ton code,mais les gotos sont pas trés apprecier ;)

            http://www.siteduzero.com/forum-83-22260-c-comment-utiliser-les-goto.html

            • Partager sur Facebook
            • Partager sur Twitter
            Anonyme
              27 février 2006 à 18:58:07

              Bon bah les goto apriori, à notre niveau ce n'est pas censé nous servir, donc je préfèrerait règler sa avec des boucles et des conditions bien placés, car la pour le momment j'arrive à allait partout mais seulement dans le sens vers le bas (par rapport au code), si je veut allait à une condition inférieur, sa m'affiche le début du code... (certe avant sa me faisait quitter donc c'est déjà mieux :p ).
              • Partager sur Facebook
              • Partager sur Twitter
                27 février 2006 à 19:01:10

                Avec un switch, je pense que ça pourrait marcher.
                • Partager sur Facebook
                • Partager sur Twitter
                Anonyme
                  27 février 2006 à 19:05:14

                  Sa marche!! (euh enfin fallait mettre des boucles aussi).

                  Donc merci tous le monde pour votre aide :) (sur ce topic et les deux autres qui avait un étroit rapport avec ^^ ).
                  • Partager sur Facebook
                  • Partager sur Twitter

                  Condition

                  × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                  × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                  • Editeur
                  • Markdown