Partage
  • Partager sur Facebook
  • Partager sur Twitter

booléen

booléen ne répond pas

Sujet résolu
    15 septembre 2020 à 11:04:45

    Je suis sur la partie où je dois implémenter une fonction qui demande à l’utilisateur s’il veut continuer ou pas mais le problème c’est que la booléen est totalement ignoré. Aussi si vous voulez me donner des détails ou des conseils je ne suis pas contre :). Sa fait un moment (un mois je croie:/) que je galère je ne voulais pas abandonner rapidement mais là j’avance pas du coup vous pouvez m’aide ?

    #include <stdio.h>
    #include <stdlib.h>
    #include <math.h>
    #include <time.h>
    
    int main(int argc, char *argv[])
    {
        int nombreMystere = 37;
        int nombreEntrer = 0;
        int coup = 0;
        int token = 0;
        int nouvelleParti = 1;
    
        do
        {
            printf("entrer un nombre : ");
            coup++;
            scanf("%d", &nombreEntrer);
    
            if(token > 0)
            {
                nombreMystere = 66;
                token--;
            }
            else if(nombreMystere > nombreEntrer)
            {
                printf("C'est plus\n");
            }
            else if(nombreMystere < nombreEntrer)
            {
                printf("C'est moins\n");
            }
            else if(nombreMystere == nombreEntrer)
            {
                printf("vous avez trouver en %d coup\n", coup);
                printf("vous voulez une nouvelle partie ? \n1 pour oui 0 pour non\n");
                scanf("%d", &nouvelleParti);
            }
            else if(1)
            {
                printf("nouvelle partie lancer");
                token++;
                coup = 0;
            }
            else
            {
                printf("fin de partie");
            }
        }while(nouvelleParti != 0);
        return 0;
    }
    
    • Partager sur Facebook
    • Partager sur Twitter
      15 septembre 2020 à 11:58:28

      Deja tu as un probleme avec tes if/else if, ceux ligne 39 et 45 sont inaccessibles.

      Il faut revoir les boucles, tu devrais separer la boucle de jeu (tant qu'on a pas trouve) et celle pour rejouer.

      • Partager sur Facebook
      • Partager sur Twitter
        15 septembre 2020 à 13:50:39

                               Début
                                 |
                                 |
                                 |<---------------,
                                 |                |
                                 |                |
                                 |<---------,     |
                                 |          |     |
                                 |          |     |
                             ,-------,      |     |
                             |       |      |     |
                             |partie |      |     |
                             |       |      |     |
                             '-------'      |     |
                                 |          |     |
                                 |          |     |
                                 ^          |     |
                                / \         |     |
                               /   \        |     |
                    fin partie/     \_______|     |
                              \     / non         |
                               \   /              |
                                \ /               |
                                 v                |
                                 |oui             |
                                 |                |
                                 |                |
                                 ^                |
                                / \               |
                               /   \              |
                       rejouer/     \_____________|
                              \     / oui
                               \   /
                                \ /  
                                 v 
                                 |non
                                 |
                                 |
                                Fin 

        -
        Edité par rouloude 15 septembre 2020 à 14:15:36

        • Partager sur Facebook
        • Partager sur Twitter
          15 septembre 2020 à 18:17:23

          pardon comment sa c'est inaccessible il a pas moins de tout mettre dans une seul boucle ?
          • Partager sur Facebook
          • Partager sur Twitter
            15 septembre 2020 à 18:38:32

            Anonyx_salut a écrit:

            il a pas moins de tout mettre dans une seul boucle ?

            Surement, mais si tu débutes, c'est peut-être pas l'idéale ! Ça va complexifier le test du while. 

            Anonyx_salut a écrit:

            pardon comment sa c'est inaccessible 

            Oui ils sont inaccessibles, car sur les trois tests du nombre mystère, il y en a forcement un qui est vrai, ce qui met fin à ton enchaînement de if else.

            -
            Edité par rouloude 15 septembre 2020 à 18:46:29

            • Partager sur Facebook
            • Partager sur Twitter
              16 septembre 2020 à 5:38:57

              avant d'appuyer sur "sujet résolu" je doit fait un truc pour vous remercier ?
              • Partager sur Facebook
              • Partager sur Twitter
              Anonyme
                16 septembre 2020 à 7:21:39

                Salut,

                Ce ne sont pas des booléens ! Ce sont des int, et la différence est importante : place en mémoire, valeurs possibles et lisibilité.

                Pour faire un booléen rien de plus simple :

                // la méthode classique
                #include <stdbool.h>
                bool a=true, b=false;
                
                // à la sauce maison
                typedef enum {
                   false = 0,
                   true
                }bool_e;
                bool_e a=true, b=false;

                Maintenant que tu connais le booléen ne met plus jamais dans tes codes :

                while( variable_d_etat != 0 );

                ça n'a aucun sens de dire qu'un int représente un état ! Dans ton code un booléen est plus adapté mais une énumération pourrait aussi être utilisée.


                -
                Edité par Anonyme 16 septembre 2020 à 7:22:42

                • Partager sur Facebook
                • Partager sur Twitter
                  16 septembre 2020 à 9:50:03

                  Anonyx_salut a écrit:

                  avant d'appuyer sur "sujet résolu" je doit fait un truc pour vous remercier ?

                  Poster ton code final !

                  • Partager sur Facebook
                  • Partager sur Twitter
                    17 septembre 2020 à 18:30:53

                    j'ai suivi vos conseil mais quand j'ai voulu testé le programme a complètement bugger en plus je suis un peu occuper du coup  je vais prendre un moment avant de montre le code

                    -
                    Edité par Anonyx_salut 17 septembre 2020 à 18:32:47

                    • Partager sur Facebook
                    • Partager sur Twitter
                      17 septembre 2020 à 18:45:48

                      Anonyx_salut a écrit:

                      en plus je suis un peu occuper du coup  je vais prendre un moment avant de montre le code

                      Nous, on a tout notre temps  :)

                      -
                      Edité par edgarjacobs 17 septembre 2020 à 18:46:43

                      • Partager sur Facebook
                      • Partager sur Twitter

                      On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

                        17 septembre 2020 à 19:04:36

                        edgarjacobs a écrit:

                        Anonyx_salut a écrit:

                        en plus je suis un peu occuper du coup  je vais prendre un moment avant de montre le code

                        Nous, on a tout notre temps  :)

                        -
                        Edité par edgarjacobs il y a 13 minutes

                        Il a peut-être voulu dire qu'il était occupé à corriger les bugs qu'il a introduits ...

                        Et nous, on ne mange pas et edgarjacobs ne cherche plus sa boule de cristal ...

                        • Partager sur Facebook
                        • Partager sur Twitter

                        Le Tout est souvent plus grand que la somme de ses parties.

                          17 septembre 2020 à 19:10:01

                          Anonyx_salut a écrit:

                          ... Sa fait un moment (un mois je croie:/) que je galère je ne voulais pas abandonner rapidement mais là j’avance pas du coup vous pouvez m’aide ?

                          C'est parti pour un mois de plus ?!

                          • Partager sur Facebook
                          • Partager sur Twitter
                            18 septembre 2020 à 5:14:08

                            rouloude a écrit:

                            C'est parti pour un mois de plus ?!

                            oui

                            en fait comment on fait pour faire des citation XD



                            -
                            Edité par Anonyx_salut 18 septembre 2020 à 5:15:14

                            • Partager sur Facebook
                            • Partager sur Twitter
                              18 septembre 2020 à 5:29:02

                              Anonyx_salut a écrit:

                              rouloude a écrit:

                              C'est parti pour un mois de plus ?!

                              oui

                              en fait comment on fait pour faire des citation XD

                              Comme ceci ...

                              -
                              Edité par Anonyx_salut il y a 10 minutes



                              • Partager sur Facebook
                              • Partager sur Twitter

                              Le Tout est souvent plus grand que la somme de ses parties.

                                18 septembre 2020 à 10:17:10

                                MalehAnonyx_salut a écrit:

                                j'ai suivi vos conseil mais quand j'ai voulu testé le programme a complètement bugger en plus je suis un peu occuper du coup  je vais prendre un moment avant de montre le code

                                -
                                Edité par Anonyx_salut il y a environ 15 heures


                                Malheureux, c'est que tu n'as pas suivi le bon conseil ! : surtout, ne jamais tester. Juste dire que ça marche. Quand on teste, c'est là que les erreurs se produisent. Et personne ne veut d'erreurs, hein.

                                -
                                Edité par michelbillaud 18 septembre 2020 à 10:18:28

                                • Partager sur Facebook
                                • Partager sur Twitter

                                booléen

                                × 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