★ À maîtriser
Lorsqu’une fonction appelle une autre fonction, elle s’exécute jusqu’à l’appel, se met en pause pendant l’exécution de la fonction appelée, puis reprend à sa fin.
La fonction au sommet de la pile d’exécution est celle qui est en cours d’exécution, tandis que les fonctions situées en dessous sont en pause.
Compléments
La pile d’exécution enregistre des informations sur les fonctions en cours d’exécution, qui s’empilent les unes sur les autres.
Quand une fonction termine son exécution, elle est automatiquement retirée du sommet de la pile ; cette opération s’appelle le dépilement.
Visualiser les fonctions empilées : seule celle du sommet agit, les autres attendent.
★ À maîtriser
Compléments
Les appels récursifs de fonctions sont permis par la plupart des langages de programmation.
La récursivité apparaît notamment dans :
★ À maîtriser
Le calcul récursif de la factorielle s’arrête au cas n=1, qui renvoie 1 ; pour n>1, il renvoie n multiplié par la factorielle de n−1.
🔄 Le calcul récursif de Fibonacci suit ces cas :
Compléments
★ À maîtriser
Une fonction récursive suit un schéma comportant un cas d’arrêt sans appel récursif et un autre cas où une instruction peut faire intervenir la fonction récursive.
La gestion de la pile peut provoquer un débordement, ralentir considérablement l’exécution et rendre l’efficacité de la fonction difficile à maîtriser.
Compléments
La récursivité permet généralement de résoudre élégamment des problèmes compliqués, évite d’entrer dans le détail de l’exécution et convient particulièrement à certaines structures de données comme les arbres.
Toute fonction récursive peut être transformée en version itérative, et réciproquement ; le choix dépend du contexte.
La récursivité rend le code plus élégant, mais la pile peut le ralentir ou déborder.
★ À maîtriser
📌 Le paradigme fonctionnel privilégie l’utilisation des fonctions, contrairement au paradigme impératif utilisé jusque-là.
Compléments
Impératif : affectations ; fonctionnel pur : tout est fonction, sans affectation.
Teste tes connaissances sur Récursivité et pile d’exécution avec 14 questions à choix multiples et corrections détaillées.
1. Que se passe-t-il lorsqu’une fonction appelle une autre fonction avant d’avoir terminé son propre travail ?
2. Dans une pile d’exécution contenant plusieurs fonctions, quelle fonction est en cours d’exécution ?
Mémorisez les concepts clés de Récursivité et pile d’exécution avec 37 flashcards interactives.
Quand une fonction appelée termine-t-elle, par rapport à la fonction appelante ?
La fonction appelante reprend à la fin de la fonction appelée.
Que fait une fonction appelante pendant l’exécution de la fonction appelée ?
Elle se met en pause.
Quelle fonction est en cours d’exécution au sommet de la pile d’exécution ?
La fonction située au sommet de la pile.
Importe ton cours et l'IA génère fiches, QCM et flashcards en 30 secondes.
Générateur de fiches