Partage
  • Partager sur Facebook
  • Partager sur Twitter

Exercice 2 sur les tableaux

J'arrive pas a le faire

Sujet résolu
    10 avril 2006 à 2:42:46

    #include <stdio.h>
    double moyenneTableau(long tableau[], long tailleTableau);

    int main(int argc, char *argv[])
    {
        long tableau[4] = {10, 15, 3};

        // On affiche le contenu du tableau
        printf("%ld\n", moyenneTableau(tableau, 4));

        return 0;
    }

    double moyenneTableau(long tableau[], long tailleTableau)
    {
        long i;
        double additionTableau = 0;

        for (i = 0 ; i < tailleTableau ; i++)
        {
            additionTableau += tableau[i];
        }
        return(additionTableau);
    }


    voici mon code. j'ai fait comme demandé et tout a l'air correct mais le programme affiche 0.
    • Partager sur Facebook
    • Partager sur Twitter
      10 avril 2006 à 3:04:15

      tu déclares un tableau de 4 cases, mais tu n'en rempli que 3
      long tableau[4] = {10, 15, 3}

      c'est normal?

      Tu retournes additionTableau qui est un long, mais pourtant, ta fonction moyenneTableau devrait retourner un double (enfin, tel que tu l'as programmé), est-ce normal?

      A quoi sert le i=0 que tu déclares dans le main?
      • Partager sur Facebook
      • Partager sur Twitter
        10 avril 2006 à 3:28:57

        Pour le tableau, oui c'est normal qu'il n'y ait que 3 cases remplies.

        Sinon j'ai règlé le problème du return, j'ai déclaré additionTableau en double et j'ai aussi supprimé le i = 0.

        Et pourtant, ça me met encore 0 comme résultat.

        • Partager sur Facebook
        • Partager sur Twitter
          10 avril 2006 à 7:25:54

          C'est parce que tu utilise %ld qui sert à afficher une variable de type long alors que ta fonction retourne un double : utilise %lf.
          Et ta fonction ne retourne pas la moyenne mais la somme totale, pour la moyenne tu dois renvoyer : return(additionTableau / tailleTableau);

          ++
          • Partager sur Facebook
          • Partager sur Twitter
            10 avril 2006 à 23:07:22

            merci, problème résolu :)
            • Partager sur Facebook
            • Partager sur Twitter
              12 avril 2006 à 11:19:31

              Merci pour moi aussi, ça m'a résolu mon problème ! :)

              Je n'y pense jamais à ce satané %lf !!! :euh:
              • Partager sur Facebook
              • Partager sur Twitter
                12 avril 2006 à 16:45:36

                Citation : Norrecix

                Je n'y pense jamais à ce satané %lf


                Apprendre à regler son compilateur pour le rendre bavard...

                Avec gcc (minGW etc.), le minimum vital est
                -Wall -Wextra -O2



                Excellent ça :
                <police nom="courrier">%lf</police>
                . La puissance de ce Zcode m'étonne tous les jours...

                • Partager sur Facebook
                • Partager sur Twitter
                Music only !

                Exercice 2 sur les tableaux

                × 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