Construire un dictionnaire associant à chaque mois son nombre de…
Application directe du cours · niveau 1 (application) · NSI (première), chapitre 5 — Les dictionnaires · Construire, lire, modifier
Énoncé
Construire un dictionnaire associant à chaque mois son nombre de jours, puis afficher les mois de jours. Vérifier que la somme des valeurs vaut .
Corrigé
JOURS = {"janvier": 31, "fevrier": 28, "mars": 31, "avril": 30, "mai": 31,
"juin": 30, "juillet": 31, "aout": 31, "septembre": 30,
"octobre": 31, "novembre": 30, "decembre": 31}
longs = [mois for mois, n in JOURS.items() if n == 31]
assert longs == ["janvier", "mars", "mai", "juillet", "aout",
"octobre", "decembre"]
assert len(longs) == 7
assert sum(JOURS.values()) == 365
La somme des valeurs est la meilleure vérification possible de la saisie : elle contrôle les douze entrées d'un coup, sans les relire une à une. Un tapé à la place d'un donnerait . Notez qu'items() sert ici parce qu'on a besoin du mois et du nombre ; values() aurait suffi pour la somme.
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.