Aller au contenu

Index des sujets 2022

Corrigé sujet 40 - Année : 2022

Sujet 40 - 2022

Exercice 1

1
2
3
4
5
6
def recherche(elt,tab):
    liste_indice=[]
    for i in range(len(tab)):
        if tab[i]==elt:
            liste_indice.append(i)
    return liste_indice

Commentaires

  1. Exercice classique de parcours de listes, en utilisant ici les indices.
  2. On peut utiliser une définition de liste par compréhension :
        def recherche(elt, tab):
            return [i for i in range(len(tab)) if tab[i] == elt]
    

Exercice 2

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
resultats = {'Dupont':{'DS1' : [15.5, 4],
                       'DM1' : [14.5, 1],
                       'DS2' : [13, 4],
                       'PROJET1' : [16, 3],
                       'DS3' : [14, 4]},
             'Durand':{'DS1' : [6 , 4],
                       'DM1' : [14.5, 1],
                       'DS2' : [8, 4],
                       'PROJET1' : [9, 3],
                       'IE1' : [7, 2],
                       'DS3' : [8, 4],
                       'DS4' :[15, 4]}}


def moyenne(nom):
    if nom in resultats: #(1)
        notes = resultats[nom]
        total_points = 0 #(2)
        total_coefficients = 0
        for valeurs  in notes.values(): #(3)
            note , coefficient = valeurs
            total_points = total_points + note * coefficient #(4)
            total_coefficients = coefficient + coefficient
        return round( total_points / total_coefficients , 1 )
    else:
        return -1
  1. On vérifie que l'élève est bien présent dans les données (sinon on renvoie -1)
  2. Pour calculer la moyenne il nous faut la somme des notes (pondérées par leur coefficient) et la somme des coefficients. On commence par initialiser ces deux sommes à 0
  3. Parcours par valeur du dictionnaire des notes de l'élèves (on rappelle que les clés sont les types d'épreuve, on en a pas besoin ici)
  4. A partir d'ici c'est l'algorithme classique du calcul d'une moyenne

Attention

L'exercice est sans doute difficile, il faut comprendre la façon dont les données sont organisées. Il s'agit d'une liste de dictionnaire ayant pour clé les noms des élèves et comme valeur un dictionnaire qui lui a pour clé les types d'épreuve et les valeurs une liste contenant la note et son coefficient.