marooh | bonsoir,j'ai écris un code qui permet de remplir un tableau et sa taille est connu dés que l'utilisateur tape zero.
ensuite on calcule la moyenne,la variance,le min,le max et le nombre des elements inférieur à la moyenne.en exécutant ce programme,il bug juste aprés la saisie.j'ignore la raison.si vous pouvez bien m'aider
Code :
- #include <stdio.h>
- #include <stdlib.h>
- #include <math.h>
- int remplissage(float*tableau,float c,int p);
- float biggest_value(float* tableau, int taille,float* minmax);
- float inferieur(float* tableau,int n,float moy);
- float variance(float moy,int n,float v);
- int main()
- {
- float minmax[2]={0},moy,var,v,inf;
- int n, p;
- float c;
- float tableau[1000];
- n=remplissage(tableau,c,p);
- moy=biggest_value(tableau,p,minmax);
- var=variance(moy,p,v);
- inf=inferieur(tableau,p,moy);
- printf("\n\nLe max est: %.0f\n\nle min est :%.0f\n\nla moyenne est : %.2f\n\nLa variance est : %.2f\n\nLe nombre de valeur inférieur à %.2f est : %.0f\n\n",minmax[0],minmax[1],moy,var,moy,inf);
- system("pause" );
- return 0;
- }
- float biggest_value(float* tableau, int n ,float* minmax)
- {
- float somme=0;
- int i;
- minmax[1]=minmax[0]=tableau[0];
- for (i=0;i<n;i++)
- {
- somme+= tableau[i];
- if (minmax[0] < tableau[i])
- minmax[0] = tableau[i];
- if (minmax[1] > tableau[i])
- minmax[1] = tableau[i];
- }
- return somme/n;
- }
- float inferieur(float* tableau,int n,float moy)
- {
- float f=0;
- int i;
- for (i=0;i<n;i++)
- {
- if (moy>tableau[i])
- f ++;
- }
- return(f);
- }
- float variance(float moy,int n,float v)
- {
- v=(moy*moy)*n-((moy*moy)/n);
- return(v);
- }
- int remplissage(float*tableau,float c,int p)
- {
- int i=0;
- p=0;
- do
- {
- printf("entrer un chiffre :\n " );
- scanf("%f",&c);
- tableau[i]=c;
- i++;
- }
- while(c!=0);
- if (c==0)
- p=i;
- return(p);
- }
|
|