Activités - Les fonctions

2ème année maturité
Cours en classe inversée. Tu regardes d'abord la capsule vidéo (théorie), puis tu t'entraînes en trois temps : un quiz de compréhension, un texte à trous, et enfin la mise en pratique dans Thonny. Sauvegarde tes programmes sur OneDrive.
Objectifs de ce premier cours
  1. Comprendre l'utilité de définir des fonctions (éviter de se répéter, réutiliser, organiser).
  2. Connaître la structure d'une fonction : def, nom, paramètres, :, corps indenté, return.
  3. Savoir écrire et appeler des fonctions simples.
1. J'écoute le prof  →  2. Je fais le quiz  →  3. Je complète le texte à trous  →  4. Je programme dans Thonny

Coche une réponse par question, puis clique sur Vérifier mes réponses.

1. Pourquoi définit-on des fonctions ?

2. Quel mot-clé sert à définir une fonction ?

3. À la fin de la ligne qui commence par def, on met toujours…

4. Comment appelle-t-on les informations écrites entre les parenthèses, qu'on donne à la fonction ?

5. Que fait l'instruction return ?

6. Qu'est-ce qui délimite le corps (le contenu) d'une fonction ?

7. Quelle est la différence entre print et return ?

8. Comment nomme-t-on l'instruction de la ligne 10 ?

Modules Python

9. Que se passe-t-il si on définit une fonction mais qu'on ne l'appelle jamais ?

10. Dans saluer("Alice"), comment appelle-t-on la valeur "Alice" ?

Complète chaque trou en cliquant dedans, puis clique sur Vérifier. Les guillemets font partie de la réponse quand il y en a. Tu peux Copier le code (avec tes réponses) pour le tester dans Thonny.

Trou 1 — Définir et appeler Facile console

On définit une fonction sans paramètre, puis on l'appelle deux fois. Complète le mot-clé de définition, les deux-points, et l'appel de la fonction.

python
 dire_bonjour()
    print("Bonjour et bienvenue !")

dire_bonjour
dire_bonjour
Trou 2 — Un paramètre Facile console

La fonction saluer reçoit un prénom en paramètre. Complète le nom du paramètre utilisé dans le print, puis passe le prénom de ton choix comme argument lors de l'appel (n'importe quel prénom entre guillemets, par ex. "Alice").

python
def saluer(prenom) :
    print("Bonjour", )

saluer()
Trou 3 — Renvoyer un résultat Moyen console

La fonction carre doit retourner le carré du nombre passé en argument. Complète le mot-clé qui retourne une valeur, puis récupère le résultat de l'appel dans une variable.

python
def carre(nombre) :
     nombre * nombre
nombre = 
resultat = 
print(f"Le carré de {nombre} est", resultat)
Trou 4 — Deux paramètres Moyen console

Complète la définition de la fonction (mot-clé, nom, paramètres) et le calcul renvoyé : l'aire d'un rectangle est largeur * hauteur.

python

    return 

print("Aire :", aire_rectangle(5, 3))

Ouvre Thonny et crée un nouveau fichier pour chaque exercice (ou un seul fichier avec tout, comme tu préfères). Écris le programme, teste-le, puis compare avec le corrigé. Il y a plus d'exercices que nécessaire : va à ton rythme et monte en difficulté.

Facile Moyen Difficile console Turtle
Exercice 1 — Ma première fonction Facile console à écrire

Écris une fonction dire_bonjour(), sans paramètre, qui affiche « Bonjour, prêt à coder ? ».
En dessous de ta fonction, appelle-la trois fois.

python
def dire_bonjour() :
    print("Bonjour, prêt à coder ?")

dire_bonjour()
dire_bonjour()
dire_bonjour()
Remarque : une seule définition, mais on peut l'appeler autant de fois qu'on veut.
Exercice 2 — Puissance d'un nombre Facile console à écrire

Écris une fonction puissance(nombre, puissance) qui imprime le résultat du nombre élevé à la puissance. Ensuite, appelle cette fonction, et affiche le résultat pour trois exemples différents.

python
def puissance(nombre, puissance) :
    print(nombre ** puissance)

puissance(3, 4)
puissance(12, 125)
puissance(-13, -10)
Ici la fonction affiche directement le résultat avec print : on ne peut pas le réutiliser. À l'exercice 3, on la modifiera pour qu'elle le retourne.
Exercice 3 — Retour de fonction Moyen console à écrire

Modifie la fonction puissance(nombre, puissance) de l'exercice 2, afin de ne pas afficher le résultat mais de le retourner. Dans le programme principal:

  • Appeler cette fonction avec comme arguments respectivement 20 et 81, et
  • Stocker le résultat dans une variable nommée res
  • Afficher res

python
def puissance(nombre, puissance) :
    return nombre ** puissance

res = puissance(20, 81)
print(res)
Exercice 4 — Bonne pratique Moyen console à écrire

En utilisant la fonction de l'exercice 3, ainsi qu’une boucle, afficher tous les nombres compris entre 2 et 25 élevés à la puissance 7.

Afficher les résultats sous la forme

  • 2 puissance 7 = ...
  • 3 puissance 7 = ...

python
### Fonctions
def puissance(nombre, puissance):
    return nombre**puissance

### Programme principal
for nombre in range(2, 26):
    res = puissance(nombre, 7)
    print(f"{nombre} puissance 7 = {res}")
Le programme principal appelle la fonction puissance dans une boucle : on réutilise la même fonction pour chaque nombre, sans rien recopier.
Exercice 5 — Prix après réduction Difficile console à écrire
  • Écris une fonction add qui prend une liste en paramètre et qui retourne la somme de tous ses éléments.
    Testez votre programme en appelant avec la liste Liste = [3,4,5,6,7,8,11]. Le résultat doit être 44.

  • Écris une nouvelle fonction, appelée listeAlea, qui va créer et retourner une liste de 10 nombres entiers compris entre 2 et 100, de manière aléatoire.
    Remplace la liste définie dans la partie 1 par l'appel de cette fonction, et affiche enfin la liste est sa somme.

python
### Imports
from random import *

### Fonctions
def add(liste):
    somme = 0
    for x in liste:
        somme = somme + x

    return somme

def listeAlea():
    liste = []
    for variable in range(10):
        nombre = randrange(2, 100)
        liste.append(nombre)
    return liste

### Programme principal
ma_liste = listeAlea()
resultat = add(ma_liste)
print(f"{ma_liste} vaut {resultat}")


add parcourt la liste et accumule la somme ; listeAlea construit une liste en ajoutant des nombres avec append. Le programme principal se contente d'appeler les deux fonctions.
Exercice 6 — Réutiliser une fonction (Turtle) Difficile Turtle à écrire

C'est ici qu'on voit toute la puissance des fonctions ! Écris une fonction point_colore(x, y, couleur) qui déplace la tortue au point (x, y) (crayon levé) et y dessine un gros point dot(40) de la couleur donnée. Ensuite, appelle ta fonction plusieurs fois pour dessiner d'un coup plusieurs points de couleurs différentes.

Rappel Turtle : penup(), goto(x, y), color("..."), dot(taille).

python
from turtle import *

def point_colore(x, y, couleur) :
    penup()
    goto(x, y)
    color(couleur)
    dot(40)

point_colore(-100, 0, "red")
point_colore(0, 0, "green")
point_colore(100, 0, "blue")
point_colore(0, 100, "orange")

hideturtle()
Sans fonction, il aurait fallu réécrire 4 lignes pour chaque point. Avec la fonction : une ligne par point. Voilà pourquoi les fonctions font gagner du temps !
Damien Cardinaux © 2024 - 2026. Ce site est sous licence CC BY-NC-SA 4.0