Récupérer variable dans tableau

Résolu/Fermé
Signaler
Messages postés
8
Date d'inscription
dimanche 15 juin 2008
Statut
Membre
Dernière intervention
15 mars 2009
-
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
-
Bonjour, je cherche à récupérer et stocker dans un tableau en C toutes les moyennes affichées par une variable du genre :

somme = somme / nombreDeNotes ;


et par la suite, afficher celles-ci par une boucle for:

for (indice = 0; indice < nbMoyenne; indice++)
    printf("%f", tab_moyenne[indice];



Quelqu'un pourrait-il me donner une idée de code ?

4 réponses

Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 803
Salut,
Comment ça afficher toutes les moyennes ?
Tu veux dire la moyenne des notes non ?
Dans ce cas, tu stockes les notes dans un tableau, tu parcours le tableau, tu calcules la somme et tu divises par le nombre de notes.
Par exemple:
int notes[]={15,12,13,...};
double sum=0;
for(size_t i=0;i<sizeof notes/sizeof *notes;i++)
   sum+=notes[i];
printf("%lf\n",sum/(sizeof notes/sizeof *notes));
0
Messages postés
8
Date d'inscription
dimanche 15 juin 2008
Statut
Membre
Dernière intervention
15 mars 2009

Merci fiddy. En faite, quand je dis toutes les moyennes, c'est que je fais tourné le prog dans une boucle while qui demande l'entrée des notes tant que. Donc, plusieurs moyennes que je veux stocker et afficher en final. Je vais étudier ton code bien que je n'utilise pas encore très bien la fonction sizeof et les pointeurs. Je suis preneur si tu a une solution plus simple.
0
slt
alors ce que j'ai compris tu veux stoker les moyns dans le tableau et pas les notes
tu dois faire deux boucle l'une pour stoker les les nots et l'une pour stoker les moyns
int somme=0
for(int j=0;j<tab.length;j++){
for(int i=0;i<nbdenote;i++){
somme=somme+note;
}
tab[i]=somme;}
for(int i=0;i<tab.length;j++){
System.out.println(" " +tab[i]);
je pense que la meme chose en c
testes le
bonne chance
0
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 803 > soso
Salut,
Ce n'est pas du C ça ;-).
0
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 803
#define NB_NOTES 5
#define MAX 15

int tab[MAX];
double moy[MAX/NB_NOTES];

double sum=0;

for(int i=0;i<MAX;i++) {
     printf("notes : ");
     scanf("%d",tab+i);
     sum+=tab[i];
    
     //tous les NB_NOTES lues au clavier, on calcule leur moyenne
     if ( (i+1)%NB_NOTES == 0 ) {
          moy[ (i+1)/NB_NOTES - 1] ) = sum/NB_NOTES;
          sum=0;
     }
}

//affichage des moyennes
for(int i=0;i<NB_NOTES;i++)
      printf("%lf ",moy[i]);
0
Messages postés
8
Date d'inscription
dimanche 15 juin 2008
Statut
Membre
Dernière intervention
15 mars 2009

Merci fiddy pour ton 2ieme code, c'est ce que je cherchais à faire (ton premier m'a fais bosser sur sizeof et les pointeurs, ce qui m'a permis d'avancer un peu dans mon apprentissage), et merci soso malgré que je n'ai pas compris la syntaxe de ton code.
0
Messages postés
11066
Date d'inscription
samedi 5 mai 2007
Statut
Contributeur
Dernière intervention
18 octobre 2016
1 803
Normal, son code n'est pas du C mais du java.
0