Une fonction qui en appelle d'autres
Exercice de TD · niveau 2 · sciences numériques et technologie (seconde), chapitre 5 — Les fonctions · Fonctions à plusieurs arguments
Énoncé
- Écrire
est_pair(n)renvoyant un booléen. - Écrire
somme_pairs(a, b)qui renvoie la somme des entiers pairs entreaetbinclus, en utilisantest_pair. - Écrire
moyenne_pairs(a, b)qui renvoie leur moyenne. - Tester sur , .
Corrigé
def est_pair(n):
return n % 2 == 0
def somme_pairs(a, b):
total = 0
for n in range(a, b + 1):
if est_pair(n):
total = total + n
return total
def moyenne_pairs(a, b):
total = 0
combien = 0
for n in range(a, b + 1):
if est_pair(n):
total = total + n
combien = combien + 1
return total / combien
print(somme_pairs(1, 10)) # 30
print(moyenne_pairs(1, 10)) # 6.0
Vérification : les pairs sont , de somme et de moyenne .
Deux remarques de méthode. D'abord, somme_pairs ne réécrit pas le test de parité : elle appelle est_pair. Le jour où la définition change, un seul endroit est à modifier. Ensuite, moyenne_pairs a besoin de deux accumulateurs — la somme et le compte. Diviser par b - a + 1 serait faux : ce serait le nombre d'entiers parcourus, pas celui des pairs retenus.
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.