← Retour au sommaire

Fiche – Algorithmique et programmation

Chapitre 7 | Première technologique (enseignement commun) | Mathématiques

Dernière mise à jour : 21 octobre 2026

L'essentiel :

Définitions clés

Définition

Variable / affectation : une variable range une valeur ; x = 5 y range 5. x = x + 1 augmente \(x\) de 1.

Définition

Boucle : for répète un nombre connu de fois ; while répète tant qu'une condition reste vraie.

Définition

Fonction : bloc nommé qui reçoit des entrées (paramètres) et renvoie une sortie avec return. Programmation modulaire = découper une tâche en fonctions simples.

Définition

Liste : collection ordonnée modifiable ; élément d'indice \(i\) noté L[i], indices de \(0\) à len(L)-1.

À connaître par cœur

Squelettes de code
# boucle bornée              # boucle non bornée (seuil)
for i in range(n):           n = 0
    ...                      while condition:
                                 n = n + 1

# accumulateur (somme)       # compteur
s = 0                        c = 0
for k in range(1, n+1):      for x in L:
    s = s + k                    if condition:
                                     c = c + 1
Créer une liste (3 façons)
L = [1, 2, 3]                       # extension
L = []; L.append(x)                 # ajouts successifs
L = [x**2 for x in range(5)]        # compréhension
L = [x for x in range(20) if x%2==0]  # compréhension filtrée
Aléatoire et Bernoulli

Méthode — Traduire un algorithme en Python

Méthode
  1. Repérer les initialisations (\(u\leftarrow\), \(s\leftarrow 0\), \(p\leftarrow 1\)).
  2. Traduire « ← » par =, « Pour … de a à b » par for i in range(a, b+1).
  3. Traduire « Tant que » par while, « Si » par if.
  4. Indenter le contenu de chaque bloc ; terminer par print ou return.

Erreurs fréquentes

Attention

❌ Confondre = (affectation) et == (test).

✅ Dans un if, toujours ==.

❌ Oublier d'initialiser (ou produit init à 0).

✅ Somme → 0, produit → 1, compteur → 0, liste → [].

❌ Croire que range(n) atteint \(n\).

✅ Il s'arrête à \(n-1\) ; pour \(n\) inclus : range(n+1).

❌ Boucle while infinie.

✅ Faire évoluer la variable de test.

Exemple rapide

Exemple — seuil avec une boucle while

Plus petit entier \(n\) tel que \(2^n \gt 1000\) :

n = 0
while 2 ** n <= 1000:
    n = n + 1
print(n)              # affiche 10  (2**10 = 1024)