En Terminale, Python n'ajoute pas un programme mathématique séparé : il met en oeuvre les idées des autres chapitres. Lire une boucle revient à identifier un invariant, une condition d'arrêt et la valeur représentée par chaque variable.
Une préparation efficace au bac alterne lecture, correction et écriture de courts algorithmes. Le code doit produire la quantité définie dans l'énoncé ; une sortie numérique vraisemblable ne suffit pas si l'initialisation ou la mise à jour décale les indices.
Lire un programme avant de l’exécuter
État des variables
À chaque passage dans une boucle, les variables possèdent un état précis. Une trace manuelle note ces valeurs ligne par ligne et révèle ce que calcule réellement le programme.
On commence par identifier les entrées, la valeur initiale, la condition et l'ordre des affectations. Dans Python, l'affectation remplace une valeur ; le signe = n'exprime pas une égalité mathématique réversible. Une fonction doit aussi atteindre son instruction return au bon moment.
Chercher le premier rang d’un seuil
Aligner n et u
Pour une suite définie par récurrence, les variables n et u doivent toujours représenter le même rang. Si u contient , n commence à 0. La boucle met à jour u puis n, ou l'inverse selon l'invariant choisi, mais la valeur renvoyée doit correspondre au premier terme satisfaisant la condition.
La condition while décrit ce qui reste vrai tant que le seuil n'est pas atteint. Pour chercher le premier rang où , on boucle tant que . Une inégalité inversée change la question résolue.
Code et trace d’une recherche de seuil
Pour et , la fonction suivante cherche le premier rang où le terme dépasse strictement A. La précondition est .
def seuil(A):
n = 0
u = 2.0
while u <= A:
u = 1.5 * u
n = n + 1
return nPour , les états après mise à jour sont , , puis . La fonction renvoie 3, cohérent avec . La croissance non bornée de assure la terminaison ; une suite qui n'atteindrait jamais le seuil pourrait provoquer une boucle infinie.
Programmer une dichotomie
Conserver un encadrement valide
- Choisir a et b tels que la cible soit encadrée.
- Calculer m=(a+b)/2.
- Comparer les signes ou la valeur de à la cible.
- Remplacer une seule borne en conservant l'invariant d'encadrement.
- Arrêter lorsque b-a est inférieur à la précision.
La fonction doit être continue sur l'intervalle et la propriété qui sélectionne la moitié doit être justifiée. Une boucle terminée par un nombre fixe d'itérations répond à une précision seulement si l'on relie ce nombre à .
Simuler sans confondre observation et preuve
Une simulation répète une expérience aléatoire, compte les succès puis calcule une fréquence. Elle permet d'observer une stabilisation ou de tester un modèle. Elle ne calcule pas exactement une probabilité et ne démontre pas l'indépendance des tirages. Fixer une graine rend une expérience reproductible, sans rendre ses résultats théoriques.

Relier Python au dénombrement et à l’intégration
| Chapitre | Algorithme utile |
|---|---|
| Combinatoire | ligne du triangle de Pascal, permutations |
| Suites | seuil et termes successifs |
| Continuité | dichotomie |
| Intégrales | rectangles, milieux, trapèzes |
| Probabilités | simulation et moyenne d'échantillon |
Pour une somme de rectangles, on définit le pas , on parcourt exactement n sous-intervalles et on ajoute . Pour Pascal, chaque coefficient intérieur provient de deux coefficients de la ligne précédente ; modifier une liste sur place exige de surveiller l'ordre pour ne pas réutiliser une valeur déjà changée.
Déboguer avec des tests mathématiques
Erreur fréquente : corriger un programme uniquement jusqu'à obtenir la sortie attendue pour un exemple. Un code faux peut réussir un cas particulier.
Contrôle utile : tester une valeur minimale, une valeur ordinaire et une situation limite ; comparer ensuite à un calcul manuel court.
Un débogage utile distingue erreur de syntaxe, erreur d'exécution et erreur logique. La dernière est la plus discrète : le programme tourne, mais ne calcule pas l'objet annoncé. Écrire l'invariant et la condition mathématique avant le code réduit ce risque.
Les boucles while mettent en oeuvre les seuils de suites. La recherche de racine prolonge la dichotomie. Les sommes programmées illustrent les méthodes numériques d'intégration.
Cette synthèse transversale reprend les exemples d'algorithmes de le programme officiel de Terminale, spécialité mathématiques.