Adloun

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.