Programme officiel

Contenus Capacités attendues Commentaires
Récursivité Écrire un programme récursif.
Analyser le fonctionnement d’un programme récursif.
Des exemples relevant de domaines variés sont à privilégier.

Programmation itérative

                    
def somme_iteratif(n: int) -> int:
    s = 0
    while n > 0:
        s = s + n
        n = n - 1
    return s

assert somme_iteratif(4) == 10
                        
Remarque

Le code de la boucle while est exécuté tant que la condition est vérifiée..

Programmation récursive

Remarque

    Une fonction récursive est une fonction:
  • qui s’appelle elle-même tant qu’une condition est vérifiée,
  • possède une condition d’arrêt, pour ne pas s’appeler indéfiniment.

                    
def somme_recursif(n: int) -> int:
if n == 0:
    return 0
else:
    return n + somme_recursif(n-1)
                        

Dans la mémoire, la pile d’appels stocke les arguments de chaque appel avant la mise en pause.
Lors de la remontée d’appel, la fonction reprend là où elle s’était mise en pause

Annexes

Liens

Lien vers le notebook

    Sur Capytale

Pièces jointes