NSI (Spé) — Langages et programmation
Récursivité et modularité
Résumé
La récursivité est une technique où une fonction s'appelle elle-même pour résoudre un problème en le décomposant en sous-problèmes plus simples. Toute fonction récursive doit avoir un cas de base (condition d'arrêt) et un cas récursif (appel à elle-même avec un problème réduit). Par exemple, la factorielle : fact(n) = n × fact(n-1) avec fact(0) = 1 comme cas de base. Sans cas de base, la récursion est infinie et provoque une RecursionError. La modularité consiste à découper un programme en modules (fichiers) réutilisables : on importe des fonctions avec import. Les spécifications (docstrings, assertions, tests) garantissent la fiabilité du code. La bibliothèque standard de Python offre de nombreux modules prêts à l'emploi comme math, random ou os.