sciences numériques et technologie (seconde) · Chapitre 5 · Application directe du cours
return ou print ?
Les fonctions · Définir et appeler une fonction · niveau 2
Énoncé
Ces deux fonctions se ressemblent. Donner l'affichage de chacun des quatre appels et expliquer l'écart.
def f(x):
return x + 1
def g(x):
print(x + 1)
print(f(3))
print(g(3))
a = f(3) * 2
b = g(3) * 2Corrigé
print(f(3)) affiche 4.
print(g(3)) affiche deux lignes : 4, écrit par le print interne de g, puis None — car g n'a pas de return et renvoie donc None, que le print externe affiche à son tour.
a = f(3) * 2 donne a = 8.
b = g(3) * 2 provoque une TypeError : on ne peut pas multiplier None par .
La distinction est la plus importante du chapitre. print montre une valeur à l'utilisateur ; return la rend disponible au programme. Seule une valeur renvoyée peut être stockée, additionnée, réutilisée. Une fonction qui se contente d'afficher est un cul-de-sac.
100 % gratuit
Essaie le suivant avec le tuteur
- L'exercice suivant avec le tuteur, sans compte : il guide pas à pas, sans donner la réponse
- 14 autres exercices corrigés dans ce chapitre, et 23 à chercher avec le tuteur
- Les 2 QCM du chapitre, le premier sans compte
- Le podcast et la vidéo du chapitre et la correction filmée du TD : 2 minutes sans compte
Sans compte : le cours, le premier QCM, 2 minutes de podcast et de vidéo et un exercice avec le tuteur. Pour tout le reste : inscription gratuite en 30 secondes, sans carte bancaire.