Moyenne tableau [Fermé]

Signaler
-
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
-
Bonjour,
je dois écrire un programme qui fait la moyenne des nombres encodés par l'utilisateur en utilisant un tableau entier, soit l'utilisateur entre 0 pour arrêter la saisie des valeurs soit le programme arrête de demander des chiffres quand il en a saisis 20, on doit afficher le calcule puis la moyenne!
pourrait on m'aider pour la logique car je ne vois pas bien comment faire? merci!!!

5 réponses

c'est en langage c!!!
2
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 65492 internautes nous ont dit merci ce mois-ci

Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
423
tu fais un tableau de taille 20
ensuite tu demande a l'utilisateur d'entre les nombres dans le tableau tant qu'il n'a pas entre 0 avec un while
puis tu fais la moyenne des elements tu tableau

voila la methode...
bonjour
voici ce que je fais mais ça marche pas , on peut me corriger svp!!
{
int[20]
int i,n
float moyenne

while(n=!0)
{printf("entrez valeur");
scanf("%d",&n);
}
for(i=0,i<n;i=i+1)
{printf("%d",v[i]);
}

for(i=0,somme=0;i<n;i++)
{somme=somme+v[i];
}
moyenne=somme/i;
printf("la moyenne est de %f ", moyenne);
}
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 531
Salut,

lami20j@debian:~/trash$ cat ccm.c
#include<stdio.h>

int main ()
{
  int v[20];
  int i, j, n, somme;

  float moyenne;
  i = 0;
  somme = 0;

  while (n != 0){
      printf ("entrez valeur : ");
      scanf ("%d", &n);
      v[i++] = n;
  }
  j = i;

  for (i = 0; i < j - 1; ++i)
    printf ("%d ", v[i]);

  for (i = 0; i < j - 1; i++)
    somme = somme + v[i];

  moyenne = (float) somme / i;
  printf ("\nla moyenne est de %.2f\n", moyenne);
  return 0;
}
lami20j@debian:~/trash$ gcc ccm.c
lami20j@debian:~/trash$ ./a.out
entrez valeur : 10
entrez valeur : 20
entrez valeur : 30
entrez valeur : 0
10 20 30
la moyenne est de 20.00
lami20j@debian:~/trash$ ./a.out
entrez valeur : 12
entrez valeur : 13
entrez valeur : 17
entrez valeur : 19
entrez valeur : 20
entrez valeur : 0
12 13 17 19 20
la moyenne est de 16.20
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 531
où plutôt
lami20j@debian:~/trash$ cat ccm.c
#include<stdio.h>

int main ()
{
  int v[20];
  int i, j, n, somme;

  float moyenne;
  i = 0;
  somme = 0;

  while (n != 0 && i < 20){
      printf ("%d. entrez valeur : ",i+1);
      scanf ("%d", &n);
      v[i++] = n;
  }
  if (v[i] == 0)
    j = i - 1;
  else
    j = i;

  for (i = 0; i < j; ++i)
    printf ("%d ", v[i]);

  for (i = 0; i < j; i++)
    somme = somme + v[i];

  moyenne = (float) somme / i;
  printf ("\nla moyenne = %d / %d = %.2f\n",somme,i,moyenne);
  return 0;
}
lami20j@debian:~/trash$ gcc ccm.c
lami20j@debian:~/trash$ ./a.out
1. entrez valeur : 10
2. entrez valeur : 20
3. entrez valeur : 30
4. entrez valeur : 0
10 20 30
la moyenne = 60 / 3 = 20.00
lami20j@debian:~/trash$ ./a.out
1. entrez valeur : 1
2. entrez valeur : 2
3. entrez valeur : 3
4. entrez valeur : 4
5. entrez valeur : 5
6. entrez valeur : 6
7. entrez valeur : 7
8. entrez valeur : 8
9. entrez valeur : 9
10. entrez valeur : 10
11. entrez valeur : 11
12. entrez valeur : 12
13. entrez valeur : 13
14. entrez valeur : 14
15. entrez valeur : 15
16. entrez valeur : 16
17. entrez valeur : 17
18. entrez valeur : 18
19. entrez valeur : 19
20. entrez valeur : 20
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
la moyenne = 210 / 20 = 10.50