Partage
  • Partager sur Facebook
  • Partager sur Twitter

probleme au niveau de la compilation

    30 octobre 2019 à 9:50:08

    bonjour

    j'ai réalisé un programme qui permet de saisir les infos de chaque personne dans mon programme c'est les joueur.

    mon problème c'est que mon programme est compilable mais les boucles et la condition if ne se réalisent pas.

    je veux savoir le problème dans ce programme pour avoir le résultat souhaité.Merci à tous.

    l'exercice est dans la partie des structures dans le cours du langage C.

    Voilà le programme:

    • Partager sur Facebook
    • Partager sur Twitter
      30 octobre 2019 à 10:05:47

      Bonjour,

      Le message qui suit est une réponse automatique activée par un membre de l'équipe. Les réponses automatiques leur permettent d'éviter d'avoir à répéter de nombreuses fois la même chose, ce qui leur fait gagner du temps et leur permet de s'occuper des sujets qui méritent plus d'attention.
      Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter la personne en question par Message Privé.

      Pour plus d'informations, nous vous invitons à lire les règles générales du forum

      Merci de colorer votre code à l'aide du bouton Code

      Les forums d'Openclassrooms disposent d'une fonctionnalité permettant de colorer et mettre en forme les codes source afin de les rendre plus lisibles et faciles à manipuler par les intervenants. Pour cela, il faut utiliser le bouton Code de l'éditeur, choisir un des langages proposés et coller votre code dans la zone prévue. Si vous utilisez l'éditeur de messages en mode Markdown, il faut utiliser les balises <pre class="brush: cpp;">Votre code ici</pre>.

      Liens conseillés

      • Partager sur Facebook
      • Partager sur Twitter
        30 octobre 2019 à 11:00:09

        A réviser

        • lecture d'un entier
        • comparaison
        • Partager sur Facebook
        • Partager sur Twitter
          30 octobre 2019 à 12:39:03

          Merci pour la réponse 

          le problème est au niveau de l'affichage des résultats souhaités

          la lecture d'un entier ou la comparaison je vois qu'elles sont justes. Lorsque le problème dans la lecture le compilateur va signaler erreur ou pas?????!!!!

          • Partager sur Facebook
          • Partager sur Twitter
            30 octobre 2019 à 13:34:38

            NaimaDihaji a écrit:

            la lecture d'un entier ou la comparaison je vois qu'elles sont justes

            Justement non.

            • Partager sur Facebook
            • Partager sur Twitter
              30 octobre 2019 à 22:16:00

              Et si la lecture et la comparaison sont fausses, ca peut s'expliquer pourquoi ce qui s'affiche est incorrect

              -
              Edité par michelbillaud 30 octobre 2019 à 22:16:30

              • Partager sur Facebook
              • Partager sur Twitter
                31 octobre 2019 à 10:10:48

                Tu comptes faire des calculs avec les numéros de téléphone !?
                • Partager sur Facebook
                • Partager sur Twitter
                  31 octobre 2019 à 10:24:41

                  magma a écrit:

                  Tu comptes faire des calculs avec les numéros de téléphone !?

                  Je connais des sites web qui ont cette riche idée (booking.com ?) de stocker les numéros de tel dans des nombres.

                  Comme ça on ne sait pas si il faut taper des zeros au début, et combien. Vachement pratique pour appeler l'agence pour avoir la clé de l'appart, quand on est à l'étranger, avec un système de numérotation inconnu (préfixes quand c'est une autre ville etc).

                  -
                  Edité par michelbillaud 31 octobre 2019 à 10:25:17

                  • Partager sur Facebook
                  • Partager sur Twitter
                    1 novembre 2019 à 11:08:22

                    Lorsque je compile mon programme il ne donne ni erreur ,le problème est au niveau des résultats.

                    Ce que j'ai appris je l'applique soigneusement,le problème c'est dans l'architecture du programme.

                    vous avez le programme,vous pouvez le compiler pour mieux comprendre mon problème.Et vous pouvez le critiquer pour connaitre ma faute.

                    • Partager sur Facebook
                    • Partager sur Twitter
                      1 novembre 2019 à 11:44:33

                      Attention, il existe deux types d'erreurs :

                      - les erreurs de syntaxe : elles sont détectées par le compilateur ;

                      - les erreurs de programmation : elles ne sont pas détectées par le compilateur puisqu'il ne peut pas deviner ce que tu veux faire.

                      Les erreurs de programmation, ça peut se jouer au niveau de l'algorithme, mais aussi de l'utilisation des fonctionnalités du langage. Il me semble que les erreurs signalées sont de ce type. Donc une compilation sans messages d'erreur ne signifie pas qu'il n'y a pas d'erreurs...

                      Par exemple tu as écris :

                      if(joueur[i].sexe=0)

                      Cette syntaxe est correcte en C, donc le compilateur n'a rien dit. Pourtant, cette instruction ne fait sûrement pas ce que tu voudrais qu'elle fasse (elle affecte la valeur 0 à joueur[i].sexe puis évalue cette affectation : étant égale à 0, elle est fausse, donc ce sont les instructions du 'else' qui seront systématiquement réalisées - j'imagine que tu voulais faire une comparaison). C'est une erreur très classique, c'est pour ça qu'on t'a juste mis sur la voie.

                      Autre exemple :

                      scanf("%ld\n",joueur[i].num_de_telephone);

                      Je crois qu'il y a deux erreurs dans cette ligne (pas de syntaxe : de programmation). Comme les autres 'scanf' sont corrects, il te suffit de comparer celui-ci avec les précédents.

                      -
                      Edité par robun 1 novembre 2019 à 11:50:48

                      • Partager sur Facebook
                      • Partager sur Twitter
                        1 novembre 2019 à 11:51:20

                        NaimaDihaji a écrit:

                        vous avez le programme,vous pouvez le compiler pour mieux comprendre mon problème.

                        Si tu l'avais correctement posté avec le bouton code </> du forum, je l'aurais testé, mais je n'ai pas l'intention de me le taper à la main !

                        • Partager sur Facebook
                        • Partager sur Twitter
                          1 novembre 2019 à 12:03:31

                          rouloude a écrit:

                          NaimaDihaji a écrit:

                          vous avez le programme,vous pouvez le compiler pour mieux comprendre mon problème.

                          Si tu l'avais correctement posté avec le bouton code </> du forum, je l'aurais testé, mais je n'ai pas l'intention de me le taper à la main !

                          Et n'oublie pas de le payer pour le copyright.

                          -
                          Edité par michelbillaud 1 novembre 2019 à 12:03:52

                          • Partager sur Facebook
                          • Partager sur Twitter
                            1 novembre 2019 à 15:26:03

                            Tu confonds '=' et '=='

                             dans ton

                            if(joueur[i].sexe=0)

                            il faudrait mettre

                            if(joueur[i].sexe == 0)

                            juste = cela prend la valeur, '==' compare la valeur


                            • Partager sur Facebook
                            • Partager sur Twitter
                              1 novembre 2019 à 22:16:52

                              Blovorad a écrit:

                              Tu confonds '=' et '=='

                               dans ton

                              if(joueur[i].sexe=0)

                              il faudrait mettre

                              if(joueur[i].sexe == 0)

                              juste = cela prend la valeur, '==' compare la valeur

                              Moi je vois que ma variable joueur[i].sexe est un booléen on doit faire joueur[i].sexe =0 ou pas????




                              -
                              Edité par NaimaDihaji 1 novembre 2019 à 22:22:41

                              • Partager sur Facebook
                              • Partager sur Twitter
                                1 novembre 2019 à 23:39:44

                                > Moi je vois que ma variable joueur[i].sexe est un booléen 

                                Pas tout à fait :

                                int sexe; // booléen 0=fille, 1=garçon

                                C'est un entier ('int') qui joue le rôle d'un booléen. Mais peu importe...


                                on doit faire joueur[i].sexe =0 ou pas????

                                Ben non ! Le symbole '=' sert à affecter une valeur. Si tu écris joueur[i].sexe =0 ça met '0' dans  joueur[i].sexe, donc tous les joueurs deviennent des filles !

                                Pour comparer il faut écrire joueur[i].sexe ==0, c'est tout.

                                • Partager sur Facebook
                                • Partager sur Twitter

                                probleme au niveau de la compilation

                                × 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