Correction CC1 2018 2019
L’énoncé est ici.
Partie 1 Tactique :
- moyenne de l’étudiant de la premiere ligne
nbNotes = len(tab[i])
moyenne =0
for j in range(nbNotes) :
moyenne += tab[0][j]
moyenne = moyenne / NbNotes
- fonction pour la moyenne de l’étudiant de la i ème ligne
def moyenneEtu(tab, i)
nbNotes = len(tab[i])
moyenne =0
for j in range(nbNotes) :
moyenne += tab[i][j]
moyenne = moyenne / NbNotes
return moyenne
- fonction pour la moyenne sur la matière de la j ème colonne
def moyenneMatiere(tab, j)
nbEtu = len(tab)
moyenne =0
for i in range(nbEtu) :
moyenne += tab[i][j]
moyenne = moyenne / NbEtu)
return moyenne
- fonction qui calcule la moyenne générale de toute la promotion.
def moyenneGen(tab)
nbNotes = len(tab[0])
moyenne =0
for j in range(nbNotes) :
moyenne += moyenneMatiere(tab, j)
moyenne = moyenne / NbNotes)
return moyenne
- (3 pts) Programme principal
print("Entrez le numéro de ligne de l'étudiant")
numEtu = int(input())
mEtu = moyenneEtu(tab, numEtu)
mGen = moyenneGen(tab)
if mEtu > mGen :
print("Bravo")
Partie 2 Stratégie :
Le fichier contenant les notes de la promotion sera appelé notes.csv.
Le fichier de sortie contenant les noms et les moyennes triées sera appelé moyennesTriees.csv.
Nous allons stocker les informations du fichier dans un gros tableau appelé tab, organisé comme suit (la première ligne ne fait pas vraiment partie du tableau) :
nom étudiant | note 1 | note 2 | … | note n |
---|---|---|---|---|
Joe | 12 | 9 | … | 5 |
Bill | … | … | … | .. |
Bob | 13 | 12 | … | 11 |
Les moyennes des étudiants seront stockées dans un tableau appélé tabMoy organisé comme suit :
nom étudiant | moyenne |
---|---|
Joe | 12.27 |
Bill | … |
Bob | 13.45 |
Le programme principal sera le suivant :
nomFichierIn = "notes.csv"
nomFichierOut = "moyennesTriees.csv"
tab = lireCsv(nomFichier)
tabMoy = calculMoyennes (tab)
tabMoy = triCroissant(tabMoy)
ecrireCsv(nomFichierOut,tabMoy)