En Terminale, la programmation en Python accompagne tous les chapitres : calculer les termes d’une suite, chercher un seuil, approcher une solution par dichotomie, simuler une expérience aléatoire. L’outil central du programme est la liste.

Une question sur ce cours ?
ULU, le tuteur d’ULUMINE, t’aide à partir de ce cours.
Objectifs
- Créer une liste en extension, par ajouts successifs ou en compréhension
- Accéder aux éléments d’une liste par leur indice
- Parcourir une liste avec une boucle
- Programmer les algorithmes classiques : seuil, dichotomie, simulation
1. Créer une liste
| Méthode | Exemple | Résultat |
|---|---|---|
| En extension | L = [3, 5, 8] | [3, 5, 8] |
| Par ajouts successifs | L = [] puis L.append(4) | [4] |
| En compréhension | L = [2*k for k in range(4)] | [0, 2, 4, 6] |
| Compréhension avec condition | L = [k for k in range(10) if k % 3 == 0] | [0, 3, 6, 9] |
2. Manipuler une liste
- Les indices commencent à 0 : si L = [3, 5, 8], alors L[0] vaut 3 et L[2] vaut 8.
- L[-1] désigne le dernier élément.
- len(L) donne le nombre d’éléments ; sum(L) leur somme (pour des nombres).
- L[i] = v modifie l’élément d’indice i.
Deux façons de parcourir L = [3, 5, 8] : sur les éléments, ou sur les indices.
L = [3, 5, 8]
# parcours sur les éléments
for x in L:
print(x)
# parcours sur les indices
for i in range(len(L)):
print(i, L[i])def somme(L):
s = 0
for x in L:
s = s + x
return s3. Suites et algorithme de seuil
Liste des termes de un = n² pour n de 0 à 5
- [n*n for n in range(6)]
[0, 1, 4, 9, 16, 25]
u = 1
n = 0
while u <= 2:
u = u * 1.05
n = n + 1
print(n)La boucle s’arrête dès que u dépasse 2 : n contient alors le seuil. Le programme affiche 15 (1,05¹⁴ ≈ 1,98 et 1,05¹⁵ ≈ 2,08).
4. Dichotomie et simulation
- Dichotomie : pour approcher une solution de f(x) = 0 sur [a ; b] où f change de signe, on calcule m = et on garde la moitié où f change de signe. Après k étapes, l’amplitude est divisée par 2ᵏ.
- Simulation : from random import random ; random() renvoie un réel aléatoire de [0 ; 1[. Le test random() < p est vrai avec une probabilité p.
def dichotomie(f, a, b, e):
while b - a > e:
m = (a + b) / 2
if f(a) * f(m) <= 0:
b = m
else:
a = m
return a, bfrom random import random
def binom(n, p):
succes = [1 if random() < p else 0 for k in range(n)]
return sum(succes)binom(10, 0.3) renvoie un nombre aléatoire de succès compris entre 0 et 10.
À retenir
- Une liste se crée en extension, par append ou en compréhension.
- Les indices commencent à 0 ; len(L) donne la longueur.
- Seuil : boucle while qui s’arrête dès que la condition est atteinte.
- Dichotomie : l’amplitude est divisée par 2 à chaque étape.

Et maintenant, à toi !
Vérifie que tu as compris avec les exercices, puis révise avec la fiche.