Algorithme Moyenne_Améliorée { constante entier Taille_Max <-- 10 variable vecteur_notes : vecteur de Taille_Max réel moyenne, inf, sup : réel nb_notes, nb_inférieur, nb_supérieur : entier Saisie_Notes(vecteur_notes, nb_notes) Calcul_Moyenne(vecteur_notes, nb_notes, moyenne) Calcul_inf_sup(vecteur_notes, nb_notes, inf, sup) Calcul_Nb_Notes_inf_et_sup(vecteur_notes, nb_notes, moyenne, nb_inférieur, nb_supérieur) Afficher("Il y a ", nb_supérieur, " notes supérieures à la moyenne, qui est ", moyenne,".\n", "Il y en a ", nb_inférieur, "inférieures.\n", "La plus haute note est ", sup, " et la plus basse est ", inf, ".\n") } procédure Saisie_Notes(E/S v: vecteur de Taille_Max réel, S NB: entier) { variable i : entier Afficher("Veuillez me dire le nombre de notes à saisir ") Saisir(NB) Pour i de 0 à NB-1 { Afficher("Veuillez me saisir la ",i+1,"ème note") Saisir(v[i]) } } procédure Calcul_inf_sup(E vect: vecteur de Taille_Max réel, E nb: entier, S inf : réel, S sup : réel) { variable i : entier inf <-- vect[0] sup <-- vect[0] Pour i de 1 à nb-1 { Si (vect[i] > sup) alors { sup <-- vect[i] } sinon { Si (vect[i] < inf) alors { inf <-- vect[i] } } } } procédure Calcul_Nb_Notes_inf_et_sup(E vect: vecteur de Taille_Max réel, E nb: entier, E moy: entier, S NBinf : entier, S NBsup : entier) { variable i : entier NBinf <-- 0 NBsup <-- 0 Pour i de 0 à nb-1 { Si (vect[i] > moy) alors { NBsup <-- NBsup + 1 } sinon { Si (vect[i] < moy) alors { NBinf <-- NBinf + 1 } } } } procédure Calcul_Moyenne(E vect: vecteur de Taille_Max réel, E nb: entier, S moy : réel) { variable i : entier somme : réel somme <-- 0 Pour i de 0 à nb-1 { somme <-- somme + vect[i] } moy <-- somme / nb }