Partage
  • Partager sur Facebook
  • Partager sur Twitter

[COURS] Tableau : exercice de la moyenne.

Sujet résolu
    12 septembre 2020 à 19:16:30

    #include <stdio.h>
    #include <stdlib.h>
    
    double moyenneTableau (double sommeTableau, double tailleTableau);
    double sommeTableau(double tableau[] , double tailleTableau);
    void affichage (double tableau[], double tailleTableau);
    
    
    int main( int argc, char *argv[])
    {
     double tableau[4]= {10.,20.,30.,40.}
    ;
    
     affichage (tableau,4);
     sommeTableau(tableau,4);
    
    
    return 0;
    }
    
     double sommeTableau(double tableau[] , double tailleTableau)
    {
    
        double i;
        double sommeTableau;
        for (i = 0. ; i < tailleTableau ; i++)
    
            {
              sommeTableau += tableau[i];
            }
    
    
            printf("\nSomme du tableau = %lf\n", sommeTableau);
    
    
     return 0;
    }
    
    void affichage (double *tableau, double tailleTableau)
    {
            int i;
            for (i = 0.0 ; i < tailleTableau ; i++)
    
            {
                printf("%lf\n", tableau[i]);
            }
    }
    
    double moyenneTableau (double sommeTableau, double tailleTableau)
    
    {
    
        double moyenneTableau = 0.0;
        double i;
        for (i = 0.0 ; i < tailleTableau ; i++)
        {
            moyenneTableau /= tailleTableau;
        }
    
    
    
        printf("\nLa moyenne du tableau est %lf", moyenneTableau);
    
    return 0;
    
    }
    

    Bonsoir à tous, je ne peux compiler à cause d'une erreur :  array subscript is not an integer à la ligne 29 : sommeTableau += tableau[i]; ...

    Ce que je comprends encore moins c'est que cette erreur est survenue lorsque j'ai mis les prototypes que j'avais oublié, avant la fonction sommeTableau fonctionnait ...

    Quelqu'un peut-il m'éclairer ?

    Merci d'avance, 

    Quentin

    • Partager sur Facebook
    • Partager sur Twitter
      12 septembre 2020 à 19:21:54

      La variable i déclaré ligne 24 doit être un entier ! (L'indice d'un tableau doit obligatoirement être un entier !

      Il est aussi préférable de déclarer celle ligne 54 comme entier aussi !

      -
      Edité par rouloude 12 septembre 2020 à 19:26:37

      • Partager sur Facebook
      • Partager sur Twitter
        12 septembre 2020 à 19:25:18

        Et la variable sommeTableau ligne 25 doit être initialisée à 0. Et depuis quand une taille de tableau n'est-elle pas de type entier ?

        -
        Edité par edgarjacobs 12 septembre 2020 à 19:30:22

        • Partager sur Facebook
        • Partager sur Twitter

        On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

          12 septembre 2020 à 19:27:51

          J'ai vu, mais je voulais qu'il compile et exécute avant !

          Faut pas tout leur cracher non plus, il faut bien qu'il se creuse un peu la tête !

          -
          Edité par rouloude 12 septembre 2020 à 19:30:11

          • Partager sur Facebook
          • Partager sur Twitter
            12 septembre 2020 à 19:28:16

            Merci de vos réponses. Je viens de leur donner la valeur 0. mais l'erreur persiste...
            • Partager sur Facebook
            • Partager sur Twitter
              12 septembre 2020 à 19:28:58

              rouloude a écrit:

              La variable i déclaré ligne 24 doit être un entier ! (L'indice d'un tableau doit obligatoirement être un entier !



              • Partager sur Facebook
              • Partager sur Twitter
                12 septembre 2020 à 19:34:00

                 double sommeTableau(double tableau[] , double tailleTableau)
                {
                
                    double i;
                    double sommeTableau = 0.;
                    for (i = 0 ; i < tailleTableau ; i++)
                
                        {
                          sommeTableau += tableau[i];
                        }
                
                
                        printf("\nSomme du tableau = %lf\n", sommeTableau);
                
                
                 return 0;
                }
                Je ne comprends pas j'ai donc mis à jour mon code source, toujours pareil
                • Partager sur Facebook
                • Partager sur Twitter
                  12 septembre 2020 à 19:55:35

                  rouloude a écrit:

                  rouloude a écrit:

                  La variable i déclaré ligne 24 doit être un entier ! (L'indice d'un tableau doit obligatoirement être un entier !





                  • Partager sur Facebook
                  • Partager sur Twitter

                  On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

                    12 septembre 2020 à 19:59:46

                    Ah oui forcément si je ne change pas le type... merci à vous 2 et très bonne soirée !
                    • Partager sur Facebook
                    • Partager sur Twitter
                      12 septembre 2020 à 20:30:38

                      Indique le sujet comme résolu.
                      • Partager sur Facebook
                      • Partager sur Twitter

                      On écrit "j'ai tort", pas "tord" qui est le verbe "tordre" à la 3ème personne de l'indicatif présent

                      [COURS] Tableau : exercice de la moyenne.

                      × 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