Créer une fonction sommeTableau

Résolu
lidkalid Messages postés 5 Statut Membre -  
fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,
Comment créer une fonction sommeTableau qui renvoie la somme des valeurs contenues dans le tableau (en utilisant un
return pour renvoyer la valeur).
j'ai ce prototype

int sommeTableau(int tableau[], int tailleTableau);

1 réponse

  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,
    Il suffit de faire une boucle for.
    Tu initialises la variable somme à 0.
    Ensuite dans ton for, tu parcours tout le tableau (i varie de 0 à tailleTableau) et tu additionnes la variable somme avec tableau[i].
    Et tu renvoie la variable somme.

    Ce qui donne :
    int sommeTableau(int tableau[], int tailleTableau) {
         ... somme=...;
         int i;
         for(i=...; i < ...; i++) {
              ... = ... + ...;
         }
         return ...;
    }
    

    2
    1. lidkalid Messages postés 5 Statut Membre
       
      bonjour.

      voici ce que j'ai écris et sa me donne de faux résultats
      #include <stdio.h>
      #include <stdlib.h>

      int main()
      {
      int tableau[4],i=0;
      sommeTableau(tableau,4);
      printf("%d \n",tableau);

      return 0;
      }

      int sommeTableau(int tableau[], int tailleTableau)
      {
      int somme=0;
      int i;
      for (i = 0 ; i < tailleTableau ; i++)
      {
      somme+=tableau[i];
      }
      return somme;
      }

      je précise que le prototype est dans le header
      0
    2. it_student
       
      ton tableau est vide --'
      0
    3. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Ton tableau est vide. Il faut donc lui mettre des valeurs dedans.
      Par exemple : int tableau[4]={1,2,3,4};

      Ensuite, tu fais printf("%d\n", tableau). Ce n'est pas le tableau qu'il faut afficher mais la valeur retournée par la fonction. Il faut donc dans le main() faire : int somme=sommeTableau(tableau,4); et afficher somme.
      Cdlt,
      0