jijiz | Si quelqun pouvait éssayer de compiler ceci et me dire pour la compilation plante, ce serait très gentil
Code :
- #include <stdio.h>
- #define NOTEMIN 0 // Note minimum
- #define NOTEMAX 20 // Note maximum
- #define MINETU 1 // Nombre minimum d'étudiants
- #define MAXETU 100 // Nombre maximum d'étudiants
- #define SEUIL 10 // Seuil des notes
- // Déclaration des sous programmes
- int sasieint (int mini, int maxi);
- int supseuil (int tabint[], int nbval, int seuil);
- void saisietabint (int tabint[], int nbval, int mini, int maxi);
- void affichetabint (int tabint[], int nbval);
- void histogrammesnotes (int tabint[], int nbval, int tabhisto[], int maxi);
- void dessinehistogrammenotes (int nbval, int tabhisto[]);
- void main (void)
- {
- int notmin,notmax,nbetud,etudmin,etudmax,tabnotes[MAXETU];
- int superieurseuil,tabhistogramme[NOTEMAX+1];
- notmin=NOTEMIN;
- notmax=NOTEMAX;
- etudmin=MINETU;
- etudmax=MAXETU;
- printf(" Saisie du nombre d\'étudiants \n" );
- nbetud=saisieint(etudmin,etudmax);
- printf("Saisie des notes\n" );
- saisietabint(tabnotes,nbetud,notmin,notmax);
- printf("Affichage des notes\n" );
- affichetabint(tabnotes,nbetud);
- superieurseuil=supseuil(tabnotes,nbetud,SEUIL);
- printf("\n Nombre de notes supérieures ou égales à %d = %d\n",SEUIL,superieurseuil);
- histogrammesnotes(tabnotes,nbetud,tabhistogramme,notmax);
- printf("\n Affichage du contenu de l\'histogramme" );
- affichetabint(tabhistogramme,notmax+1);
- dessinehistogrammenotes(NOTEMAX+1,tabhistogramme);
- }
- /*
- N : saisieInt
- R : saisie contrôlée d'une valeur entière dans un intervalle (mini <= val saisie <= maxi)
- E : mini : valeur minimum acceptée (incluse)
- maxi : valeur maximum acceptée (incluse)
- S : retourne la valeur saisie
- Prec : mini <= maxi
- */
- int saisieInt (int mini, int maxi)
- {
- int val;
- printf("Valeur comprise entre %d et %d :", mini, maxi);
- scanf ("%d", &val);
- while ( (val < mini) || (val > maxi) )
- {
- printf("Erreur de saisie (%d), Valeur comprise entre %d et %d :", val, mini, maxi);
- scanf ("%d", &val);
- }
- return val;
- }
- /*
- N : saisietabint
- R : saisie des valeurs comprises dans un intervalle défini dans la fonction
- saisietab, stockage de ces valeurs dans un tableau
- E : mini : valeur minimum acceptée (incluse)
- maxi : valeur maximum acceptée (incluse)
- nbval : nombre total de valeurs à saisir
- tabint[] : tableau contenant les entiers
- S : -
- Prec : -
- */
- void saisietabint (int tabint[], int nbval, int mini, int maxi)
- {
- int i;
- for (i=0;i<nbval;i++);
- {
- printf("Saisir la valeur %d: \n",(i+1));
- tabint[i]=saisieint(mini,maxi);
- }
- }
- /*
- N : affichetabint
- R : Affiche un tableau d'entiers à l'écran, une valeur par ligne
- E : nbval : nombre total de valeurs à saisir
- tabint[] : tableau contenant les entiers
- S : -
- Prec : -
- */
- void affichetabint (int tabint[],int nbval)
- {
- int i;
- for (i=0;i<nbval;i++)
- {
- printf("Valeur %d=%d\n",i,tabint[i]);
- }
- }
- /*
- N : supseuil
- R : Affiche un tableau d'entiers à l'écran, une valeur par ligne
- E : nbval : nombre total de valeurs à saisir
- tabint[] : tableau contenant les entiers
- seuil : seuil
- S : supseuil: nombre d'entiers supérieurs ou égal au seuil
- Prec : -
- */
- int supseuil(int tabint[],int nbval,int seuil)
- {
- int i,supseuil;
- supseuil=0;
- for (i=0;i<nbval;i++);
- {
- if (tabint[i]>=seuil)
- {
- supseuil++;
- }
- }
- return (supseuil);
- }
- /*
- N : histogrammenotes
- R : A partir d'un tableau de notes, donne le nombre d'étudiants ayant obtenu
- chacune des notes (0 à 20)
- E : tabint[] : tableau contenant les entiers
- tabhisto[] : talbeau contenant le nombre d'édudiant ayant eu une note
- donnée.
- nbval : Nombre d'éléments contenus dans tabhisto[]
- S : -
- Prec : -
- */
- void histogrammesnotes (int tabint[],int nbval, int tabhisto[], int maxi)
- {
- int i;
- for (i=0;i<=maxi+1;i++)
- {
- tabhisto[i]=0;
- }
- for (i=0;i<nbval;i++)
- {
- tabhisto[tabint[i]]++;
- }
- }
- /*
- N : dessinehistogrammenotes
- R : Affiche un graphique qui représente le nombre d'étudiants ayant
- obtenus une note donnée
- E: tabhisto[] : tableau contenant le nombre d'édudiants ayant eu une note
- donnée
- S : -
- Prec : -
- */
- void dessinehistogrammenotes (int nbval, int tabhisto[])
- {
- int i,j;
- for (i=0;i<nbval;i++)
- {
- for (j=0;j<tabhisto[i];j++)
- {
- printf("*" );
- }
- printf("\n" );
- }
- }
|
|