Comment introduire la récursivité en classe ? Un idée didactique.
Bonjour Charles Poulmaire tu es enseignant d’informatique au lycée sur l’académie de Versailles en NSI. Est ce que tu pourrais nous dire comment partager les meilleures façons d’enseigner?
Le mieux, c’est que je te donne un exemple, par exemple, sur le cours de la récursivité que j’ai fait en terminale. Dans un premier temps, je vérifie les acquis des élèves sur la notion de fonction, donc je leur demande, sous forme de petits exercices très simples, de faire des appels de fonction qui appellent d’autres fonctions. Quelque chose de très simple pour qu’ils travaillent tout d’abord en autonomie pendant quelques minutes. Ensuite, on met en commun nos résultats pour donner des explications. J’utilise parfois Python Tutor, qui permet d’exécuter ligne par ligne le programme Python.
Suite à cela, j’ai demandé à quelques élèves de venir au tableau. Chacun avait un rôle particulier, celui d’être une fonction. Alors, à chaque fois que s’exécutait son programme, il appelait telle fonction, qui était donc un·e autre élève qui, lui, par exemple, suivant la fonction, appelait peut être un·e autre élève, etc. Il y avait des renvois, les élèves attendaient, etc. Ce qui a permet un peu de clarifier ces appels.
Suite à cela, on est passé aux fonctions récursives et donc on a adopté le même schéma. D’abord, laisser les élèves un peu tranquilles pendant quelques minutes. Lire les exercices, pour comprendre. Moi, je passais dans les rangs leur donner des conseils. Suite à cela, on a mis en commun notre réflexion en utilisant aussi Python Tutor, qui est un outil vraiment intéressant pour l’exécution pas à pas. Une fois qu’on a terminé en répondant aux questions, ceci en animant un petit peu, les élèves répondaient entre eux.
Ensuite, on a fait jouer cet exercice de fonctions récursives aux élèves, donc chaque élève était la fonction et chaque fois qu’il y avait un appel à une autre fonction. On changeait bien sûr les arguments et ils appelaient un·e autre camarade qui appelait un·e camarade, etc. Jusqu’à ce qu’il y ait une terminaison. Et ça permettait de comprendre tous ces renvois de valeurs pour donner le résultat final.
Donc, comme tu peux le voir, il y a des approches qui sont différentes, des activités différentes. Les élèves sont différent·e·s, donc j’essaie de varier un peu les approches et aussi d’utiliser soit des activités débranchées, soit des activités sur postes puisque suite à tout cela, on est allé sur les postes et on a écrit les programmes. Voilà.
Cette série propose des partages de pratiques ou des témoignages sous forme de petite capsule vidéo de 2 à 3 minutes, facile à réaliser.