Partage
  • Partager sur Facebook
  • Partager sur Twitter

Probleme de calcule

Au lieu de mettre 30, il met 301 !!!

Sujet résolu
    18 août 2006 à 13:46:49

    J'en suis a la fin du chapittre 1 en C++, he le j'apprend a faire une fonction, a les appeler... Mon probleme est simple: J'ai fait une fonction qui calcule le triple d'une variable. En faite c'est une petit calculatrice !!!

    Le bug c'est que quand je met 10, au lieux de mettre 30, il met 301 !!!, il ajoute un 1 ! Ce probleme m'etait deja arriver mais je ne me souviens plus comment le resoudre !

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

    long triple (long nombre)
    {
         return 3* nombre;
    }

    int main(int argc, char *argv[])

    {
        long resultat = 0;
       
        printf("Entre un nombre: ");
        scanf("%ld", &resultat);
       
        printf("\\nLe triple de ce nombre est: %dl\\n", triple(resultat));
       
        printf("\\n\\n\\n");
        system("PAUSE");
        return 0;
    }


    voila
    • Partager sur Facebook
    • Partager sur Twitter
      18 août 2006 à 13:47:58

      Mais pourquoi tu mets "%dl" ? C'est pas un 1 qu'il affiche c'est un l
      • Partager sur Facebook
      • Partager sur Twitter
        18 août 2006 à 13:54:02

        Surtout que je te l'avais déjà fait remarqué.
        • Partager sur Facebook
        • Partager sur Twitter
          18 août 2006 à 14:16:55

          heu, je vais pas faire deux post dans le meme journer quand meme ^^, j'ai un autre probleme, regarde ce code, quand j'essaye de compliller il me dit que le fonction convertion na pas etait declarer !!!

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

          long triple (long nombre)
          {
               return 3* nombre;
          }

          double convertion (double euro)
          {
               return 6.55957* euro;
          }

          int main(int argc, char *argv[])

          {
              long resultat = 0;
              double argent = 0;
             
              printf("Entre un nombre: ");
              scanf("%ld", &resultat);
             
              printf("\\nLe triple de ce nombre est: %ld\\n", triple(resultat));
             
              printf("\\nCombien d'argent possedez vous ? ");
              scanf("%lf", &argent);
              printf("Vous posseder %lf francs !", convertion(argent));
             
              printf("\\n\\n\\n=== Quelque convertion ===\\n\\n");
              printf("10 euro = %lf francs\\n50 euro = %lf francs\\n100 euro = %lf francs", conversion(10), convertion (50), convertion (100));
             
             
              printf("\\n\\n\\n");
              system("PAUSE");
              return 0;
          }


          C'est vers la fin qu'il meux dit quelle est pas declarer .
          • Partager sur Facebook
          • Partager sur Twitter
            18 août 2006 à 14:19:14

            tu vois une fonction conversion toi ?
            • Partager sur Facebook
            • Partager sur Twitter
              18 août 2006 à 14:24:59

              ha mais oui, defois je suis vraiment...

              faut que je fasse plus attention.
              • Partager sur Facebook
              • Partager sur Twitter
                18 août 2006 à 14:26:30

                Non mais j'ai fais exprés de mettre en gras. Toi tu as convertion et aprés tu utilises conversion. Tu as la fonction avec un T et tu utilises conversion avec un S, c'est différent

                convertion est différent de conversion

                T'as compris ?
                • Partager sur Facebook
                • Partager sur Twitter

                Probleme de calcule

                × 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