Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème avec les tableaux

Ex : 2 des tableaux

Sujet résolu
    19 août 2006 à 23:01:37

    Salut, voilà je viens d'écrir le code pour l'ex 2 des tableau, mais je ne comprend pas pourquoi mon code ne marche pas.
    Voilà mon code :
    #include <stdio.h>
    #include <stdlib.h>

    double moyenne_tableau(long tableau[], long taille_tableau);

    int main()
    {

      long tableau[4], i = 0;

        tableau[0] = 10;
        tableau[1] = 22;
        tableau[2] = 5;
        tableau[3] = 8;

        for (i = 0 ; i < 4 ; i++)
        {
            printf("%ld ", tableau[i]);
        }

      printf("\nLa moyenne du tableau vaut : %ld \n", moyenne_tableau(tableau, 4));

       system("PAUSE");
        return 0;
    }

    double moyenne_tableau(long tableau[], long taille_tableau)
    {

    long r;
    long total_tableau = 0 ;
    long MoyenneTableau = 0;


    for(r = 0; r < taille_tableau; r ++)
    {
      total_tableau = tableau[r] + total_tableau ;
    }

    MoyenneTableau = totale_tableau / tailleTableau ;

    return MoyenneTableau;
    }
    • Partager sur Facebook
    • Partager sur Twitter
      19 août 2006 à 23:13:53

      Ton code fonctionne maintenant !!

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

      double moyenne_tableau(long tableau[], long taille_tableau);

      int main(void)
      {

        long tableau[4], i = 0;

          tableau[0] = 10;
          tableau[1] = 22;
          tableau[2] = 5;
          tableau[3] = 8;

          for (i = 0 ; i < 4 ; i++)
          {
              printf("%ld ", tableau[i]);
          }

        printf("La moyenne du tableau vaut : %lf \n", moyenne_tableau(tableau, 4));

         system("PAUSE");
          return 0;
      }

      double moyenne_tableau(long tableau[], long taille_tableau)
      {

      long r=0;
      long total_tableau = 0 ;
      double MoyenneTableau = 0;


      for(r = 0; r < taille_tableau; r ++)
      {
        total_tableau = tableau[r] + total_tableau ;
      }

      MoyenneTableau = total_tableau / taille_tableau ;

      return MoyenneTableau;
      }


      Fais attention car tes variables ne porte pas le meme nom dans ta fonction !!
      MoyenneTableau doit etre defini en double et non en long vu que ta fonction doit renvoyer un double !!
      et pour afficher un decimal c'est %lf

      voila je pense que c'est tout ;)
      • Partager sur Facebook
      • Partager sur Twitter
        19 août 2006 à 23:25:06

        Citation : Sentenza

        Salut, voilà je viens d'écrir le code pour l'ex 2 des tableau, mais je ne comprend pas pourquoi mon code ne marche pas.



        Erreur syntaxique ? Algorithmique ? Etourderitique ? :p

        Essais d'être plus précis à l'avenir... Il est de bon usage d'indiquer l'erreur donné par le compilateur/linker ou les warnings du préprocesseur s'il y a (et s'il ont un quelconque interêt), du shell s'il s'agit d'un dépassement de mémoire ou si le programme se ferme en renvoyant EXIT_FAILURE et non EXIT_SUCCESS.

        Merci de préciser aussi s'il y a lieu la ligne à laquelle se situe l'erreur/warning.

        Voilà pour le sermon ^^

        Pour ce qui est de l'erreur elle même elle s'explique aisément par le fait que MoyenneTableau soit de type long. Que la fonction moyenne_tableau renvoie un double ou non, tu n'auras que le résultat d'une division euclidienne puisque les entiers de type long n'acceptent pas de virgule...

        [e:] Grilled. M'enfin bon je ne suis pas persuadé qu'il suffise de déclarer MoyenneTableau comme un objet de type double pour résoudre le problème. Un long par un long donnera toujours un long... [/e]
        • Partager sur Facebook
        • Partager sur Twitter
          19 août 2006 à 23:33:17

          Bien vue ! grace a toi il n'aura meme pas eu a chercher d'ou venait son erreur !
          • Partager sur Facebook
          • Partager sur Twitter

          Problème avec 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