Python au lycée (3) : Les boucles Méthode

Calculer une somme avec une boucle for

Durée estimée
5 minutes
Votre progression

Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.

Créer un compte

Méthode

Pour calculer une somme avec une boucle for :

  1. Initialiser la somme à 0 avant la boucle : S = 0.
  2. Écrire la boucle for qui parcourt les termes à additionner.
  3. À chaque tour, ajouter le terme courant à la somme : S = S + terme.
  4. Après la boucle, la variable S contient la somme finale. On peut l'afficher avec print.

Ce schéma d'accumulation se transpose pour calculer un produit (initialiser P = 1 et multiplier), un maximum, un compteur, etc.

Somme des entiers de 1 à 100

On veut calculer $S = 1 + 2 + 3 + \ldots + 100$ :

S = 0
for i in range(1, 101) :
    S = S + i
print(S)

Étape 1 : Initialisation : S = 0 avant la boucle.

Étape 2 : La boucle parcourt i de 1 à 100 (avec range(1, 101) — penser à la borne exclue).

Étape 3 : À chaque tour, S = S + i ajoute la valeur de i à la somme.

Suivi des premières étapes :

Étape i S après S = S + i
1 1 1
2 2 3
3 3 6
4 4 10
... ... ...
100 100 5050

Étape 4 : Après la boucle, on affiche S, qui vaut $5050$.

Somme des carrés des entiers de 1 à 10

On veut calculer $S = 1^2 + 2^2 + 3^2 + \ldots + 10^2$ :

S = 0
for i in range(1, 11) :
    S = S + i ** 2
print(S)     # affiche 385

Étape 1 : Initialisation : S = 0.

Étape 2 : La boucle parcourt i de 1 à 10 avec range(1, 11).

Étape 3 : À chaque tour, on ajoute le carré de i à la somme.

Étape 4 : Vérification rapide : $1 + 4 + 9 + 16 = 30$ (quatre premiers termes). Le programme renvoie $385$, qui correspond à la formule $\dfrac{n(n+1)(2n+1)}{6} = \dfrac{10 \times 11 \times 21}{6} = 385$.

Attention

Deux oublis classiques :

  • Oublier l'initialisation avant la boucle : Python signale alors une erreur quand il rencontre S = S + i (la variable S n'existe pas encore).
  • Initialiser S = 0 à l'intérieur de la boucle : la somme est remise à zéro à chaque tour, et la valeur finale n'est alors que le dernier terme.

Pour un produit, initialiser à 1 (et non à 0), sinon le produit restera nul.

Pour s'entraîner