Calculer la Moyenne d'un Ensemble de Données en C

CCBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire, vous apprendrez à calculer la moyenne d'un ensemble de données en langage C. Ce laboratoire couvre les étapes suivantes :

  1. Lecture d'un tableau de nombres à partir de l'entrée utilisateur.
  2. Calcul de la somme des nombres, puis du calcul de la moyenne en divisant la somme par le nombre de nombres.
  3. Affichage de la moyenne calculée.

Ce laboratoire fournit un guide étape par étape, incluant un exemple de code, pour vous aider à comprendre le processus de calcul de la moyenne en C. À la fin de ce laboratoire, vous aurez les compétences nécessaires pour analyser et résumer des données numériques à l'aide du langage C.

Lecture d'un tableau de nombres

Dans cette étape, vous apprendrez à lire un tableau de nombres en langage C. Nous allons créer un programme simple qui permet aux utilisateurs d'entrer un ensemble de nombres et de les stocker dans un tableau.

Tout d'abord, créons un nouveau fichier C dans le répertoire ~/project :

cd ~/project
nano mean_calculation.c

Maintenant, saisissez le code suivant :

#include <stdio.h>

#define MAX_SIZE 100

int main() {
    int numbers[MAX_SIZE];
    int count;

    // Demander à l'utilisateur le nombre d'éléments
    printf("Entrez le nombre d'éléments (max %d) : ", MAX_SIZE);
    scanf("%d", &count);

    // Validation de l'entrée
    if (count <= 0 || count > MAX_SIZE) {
        printf("Nombre d'éléments invalide !\n");
        return 1;
    }

    // Lire les nombres dans le tableau
    printf("Entrez %d nombres :\n", count);
    for (int i = 0; i < count; i++) {
        printf("Entrez le nombre %d : ", i + 1);
        scanf("%d", &numbers[i]);
    }

    // Afficher les nombres saisis
    printf("\nLes nombres saisis sont :\n");
    for (int i = 0; i < count; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    return 0;
}

Compilez le programme :

gcc mean_calculation.c -o mean_calculation

Exécutez le programme :

./mean_calculation

Exemple de sortie :

Entrez le nombre d'éléments (max 100) : 5
Entrez 5 nombres :
Entrez le nombre 1 : 10
Entrez le nombre 2 : 20
Entrez le nombre 3 : 30
Entrez le nombre 4 : 40
Entrez le nombre 5 : 50

Les nombres saisis sont :
10 20 30 40 50

Décomposons les parties clés du code :

  • #define MAX_SIZE 100 définit une limite maximale pour la taille du tableau.
  • scanf() est utilisé pour lire le nombre d'éléments et les nombres individuels.
  • Nous validons l'entrée pour nous assurer qu'elle est comprise dans la plage autorisée.
  • Une boucle for est utilisée pour saisir et afficher les nombres.

Ce programme démontre comment :

  1. Déclarer un tableau avec une taille maximale.
  2. Obtenir le nombre d'éléments de l'utilisateur.
  3. Saisir les nombres dans le tableau.
  4. Valider l'entrée utilisateur.
  5. Afficher les nombres saisis.

Calculer la somme, puis la moyenne = Somme/Nombre

Dans cette étape, nous allons étendre le programme précédent pour calculer la somme et la moyenne des nombres saisis par l'utilisateur.

Ouvrez le fichier existant :

cd ~/project
nano mean_calculation.c

Modifiez le code pour inclure le calcul de la somme et de la moyenne :

#include <stdio.h>

#define MAX_SIZE 100

int main() {
    int numbers[MAX_SIZE];
    int count;
    int sum = 0;
    float mean;

    // Demander à l'utilisateur le nombre d'éléments
    printf("Entrez le nombre d'éléments (max %d) : ", MAX_SIZE);
    scanf("%d", &count);

    // Validation de l'entrée
    if (count <= 0 || count > MAX_SIZE) {
        printf("Nombre d'éléments invalide !\n");
        return 1;
    }

    // Lire les nombres dans le tableau et calculer la somme
    printf("Entrez %d nombres :\n", count);
    for (int i = 0; i < count; i++) {
        printf("Entrez le nombre %d : ", i + 1);
        scanf("%d", &numbers[i]);
        sum += numbers[i];
    }

    // Calculer la moyenne
    mean = (float)sum / count;

    // Afficher les résultats
    printf("\nLes nombres saisis sont :\n");
    for (int i = 0; i < count; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    printf("Somme des nombres : %d\n", sum);
    printf("Moyenne des nombres : %.2f\n", mean);

    return 0;
}

Compilez le programme :

gcc mean_calculation.c -o mean_calculation

Exécutez le programme :

./mean_calculation

Exemple de sortie :

Entrez le nombre d'éléments (max 100) : 5
Entrez 5 nombres :
Entrez le nombre 1 : 10
Entrez le nombre 2 : 20
Entrez le nombre 3 : 30
Entrez le nombre 4 : 40
Entrez le nombre 5 : 50

Les nombres saisis sont :
10 20 30 40 50
Somme des nombres : 150
Moyenne des nombres : 30.00

Modifications clés de cette version :

  • Ajout de la variable sum pour suivre la somme de tous les nombres.
  • Intégration du calcul de la somme dans la boucle d'entrée.
  • Calcul de la moyenne en divisant la somme par le nombre.
  • Utilisation du casting de type (float) pour garantir une division en virgule flottante.
  • Ajout de la sortie pour la somme et la moyenne avec une impression formatée.

Le programme démontre maintenant :

  1. Le calcul de la somme des éléments du tableau.
  2. Le calcul de la moyenne arithmétique.
  3. L'affichage des résultats avec une précision.

Afficher la moyenne

Dans cette dernière étape, nous allons refactoriser le code pour créer une fonction pour calculer et afficher la moyenne, ce qui rendra notre programme plus modulaire et lisible.

Ouvrez le fichier existant :

cd ~/project
nano mean_calculation.c

Mettez à jour le code avec une fonction dédiée au calcul de la moyenne :

#include <stdio.h>

#define MAX_SIZE 100

// Fonction pour calculer et afficher la moyenne
void calculateMean(int numbers[], int count) {
    if (count <= 0) {
        printf("Erreur : Aucun nombre pour calculer la moyenne.\n");
        return;
    }

    int sum = 0;
    float mean;

    // Calculer la somme
    for (int i = 0; i < count; i++) {
        sum += numbers[i];
    }

    // Calculer la moyenne
    mean = (float)sum / count;

    // Afficher les statistiques détaillées
    printf("\nStatistiques :\n");
    printf("Nombre d'éléments : %d\n", count);
    printf("Somme des nombres : %d\n", sum);
    printf("Moyenne des nombres : %.2f\n", mean);
}

int main() {
    int numbers[MAX_SIZE];
    int count;

    // Demander à l'utilisateur le nombre d'éléments
    printf("Entrez le nombre d'éléments (max %d) : ", MAX_SIZE);
    scanf("%d", &count);

    // Validation de l'entrée
    if (count <= 0 || count > MAX_SIZE) {
        printf("Nombre d'éléments invalide !\n");
        return 1;
    }

    // Lire les nombres dans le tableau
    printf("Entrez %d nombres :\n", count);
    for (int i = 0; i < count; i++) {
        printf("Entrez le nombre %d : ", i + 1);
        scanf("%d", &numbers[i]);
    }

    // Afficher les nombres saisis
    printf("\nLes nombres saisis sont :\n");
    for (int i = 0; i < count; i++) {
        printf("%d ", numbers[i]);
    }
    printf("\n");

    // Calculer et afficher la moyenne
    calculateMean(numbers, count);

    return 0;
}

Compilez le programme :

gcc mean_calculation.c -o mean_calculation

Exécutez le programme :

./mean_calculation

Exemple de sortie :

Entrez le nombre d'éléments (max 100) : 4
Entrez 4 nombres :
Entrez le nombre 1 : 10
Entrez le nombre 2 : 20
Entrez le nombre 3 : 30
Entrez le nombre 4 : 40

Les nombres saisis sont :
10 20 30 40
Statistiques :
Nombre d'éléments : 4
Somme des nombres : 100
Moyenne des nombres : 25.00

Améliorations clés de cette version :

  • Création d'une fonction distincte calculateMean().
  • Ajout d'une sortie statistique plus détaillée.
  • Amélioration de la gestion des erreurs pour les cas limites.
  • Conservation de la même fonctionnalité de base que les étapes précédentes.
  • Conception de code plus modulaire et plus facile à lire.

Le programme démontre :

  1. Une approche basée sur les fonctions pour les calculs.
  2. Une sortie statistique complète.
  3. Une conception de code modulaire.

Résumé

Dans ce laboratoire, vous apprendrez à lire un tableau de nombres en programmation C, à calculer la somme et la moyenne de l'ensemble de données, puis à afficher la moyenne. Tout d'abord, vous demanderez à l'utilisateur d'entrer un ensemble de nombres et de les stocker dans un tableau. Ensuite, vous calculerez la somme des nombres et la diviserez par le nombre d'éléments pour trouver la moyenne. Enfin, vous afficherez la moyenne calculée.

Les étapes clés abordées dans ce laboratoire incluent la déclaration d'un tableau avec une taille maximale, la récupération du nombre d'éléments auprès de l'utilisateur, l'entrée des nombres dans le tableau, la validation des entrées utilisateur et l'affichage des nombres saisis. À la fin du laboratoire, vous aurez une compréhension claire de la façon de calculer la moyenne d'un ensemble de données en programmation C.