Adloun

n° 53

Application directe du cours · niveau 1 (application) · NSI (première), chapitre 5 — Les dictionnaires · Construire, lire, modifier

Énoncé

Écrire somme_valeurs(d). Quelle méthode d'itération choisir, et que renvoyez-vous sur un dictionnaire vide ?

Corrigé


def somme_valeurs(d):
    """Somme des valeurs de d. Precondition : les valeurs sont des nombres.
    Sur un dictionnaire vide, la somme vaut 0 -- c'est le neutre, pas une
    erreur."""
    total = 0
    for valeur in d.values():
        total = total + valeur
    return total

assert somme_valeurs({"a": 2, "b": 3}) == 5
assert somme_valeurs({}) == 0
assert somme_valeurs(JOURS) == 365

values() : la clé n'intervient pas dans le calcul. Le dictionnaire vide ne demande aucune précondition ici — contrairement à la moyenne, qui divise par len(d). La somme d'aucun terme vaut ; c'est une convention mathématique, pas une facilité de Python.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.