Vous êtes sur la page 1sur 2

Université d’Oran1 Année universitaire 2020/2021

FSEA Matière :ASD2
Département d’Informatique L1: Section1 & Grs 7, 8, 9
NOM : Prénom : Gr:

TEST

Exercice:
On souhaite sauvegarder l’ensemble des étudiants inscrits au module « ASD » dans un tableau
(n ≤ 100) Chaque étudiant est caractérisé par son  numéro d’inscription  (Num), son  nom 
(Nom), son prénom  (Pr), sa note test1 (Test1) et  note de teste2 (Test2).
1. Proposer une structure pour représenter l’étudiant
2. Ecrire une fonction « moy » qui retourne la moyenne des deux tests.
3. Ecrire une procédure « notes_module » qui permet de sauvegarder dans un tableau la
moyenne de tous les étudiants puis calcule la moyenne générale du module (la moyenne
générale du module est la somme de toutes les moyennes divisée par le nombre
d'étudiants).
4. Ecrire l’algorithme principal qui permet de saisir les étudiants, leurs notes et affiche la
moyenne générale du module.
Solution :

Question 1 : 1pt
Type Etudiant=structure {
Num : entier ;
Nom : chaine ;
Pr : entier ;
Test1, Test2 : réel;
}

Question 2 : 3 pts
Fonction moy (E : étudiant) : réel
Début
moy ← (E.Test1 + E.Test2)/2;
Fin.

Question 3 : 6 pts
Procédure notes_module ( ↓ T [] : enseignant , ↓ n : entier, ↑ M [],↑ Moyenne : réel) Début
i : entier ;
S : réel; S ← 0;
pour i de 1 à n faire 2pts
M [i] ← moy (T[i]) ; // on fait appel à la fonction moy (question 2)
S ← S + M [i]; // ou S ← S + moy (T[i]);
Fpr;
Moyenne ← S/n ; 1 pt
Fin
Question 4 : 10,25
Algorithme
Début
Tab [100], M [100] : Etudiant ;
n, i : entier ;
Moyenne : réel;
Ecrire ( ̋ Enter le nombre des étudiants ̋ );
lire (n) ;
pour i de 1 à n faire
lire ( Tab [i].Num, Tab [i].Nom, Tab [i].Pr, Tab [i].Test1, Tab [i].Test2 ) ;
//ou lire (Tab[i]) ;
fpr ;
notes_module ( Tab, n, M, Moyenne) ;
Ecrire (" La moyenne générale du module est" ; Moyenne);
Fin.

ou bien aussi
Question 2 :
Fonction moy (x,y:réel) : réel
Début
moy ← (x+y)/2;
Fin.

Question 3 :
Procédure notes_module ( ↓ T [] : Etudiant , ↓ n : entier, ↑ M [],↑ Moyenne : réel)
Début
i : entier ;
S : réel; S ← 0;
pour i de 1 à n faire
M [i] ← moy (T[i].Test1, T[i].Test2) ; // on fait appel à la fonction moy (question
2)
S ← S + M [i]; // ou S ← S + moy (T[i]);
Fpr;
Moyenne ← S/n ;
Fin

Vous aimerez peut-être aussi