Une fonction qui renvoie plusieurs valeurs
Exercice supplémentaire · niveau 2 · sciences numériques et technologie (seconde), chapitre 5 — Les fonctions · Fonctions à plusieurs arguments
Énoncé
Écrire une fonction division_euclidienne(a, b) qui renvoie le quotient et le reste. Montrer comment récupérer les deux, et expliquer ce qu'est l'objet renvoyé.
Corrigé
def division_euclidienne(a, b):
return a // b, a % b
q, r = division_euclidienne(47, 5)
print(q, r) # 9 2
print(division_euclidienne(47, 5)) # (9, 2)
L'objet renvoyé est un tuple — une suite ordonnée de valeurs, notée entre parenthèses. L'écriture q, r = ... le déballe en deux variables ; c'est le même mécanisme que a, b = b, a.
Un tuple ressemble à une liste, avec une différence : il n'est pas modifiable. C'est justement ce qu'on veut pour un résultat de fonction, qu'on ne souhaite pas voir altéré après coup.
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.