Mathématiques · Seconde
Variables et affectations : exercices corrigés de 2de
Publié le 9 novembre 2026 · Mis à jour le 9 novembre 2026 · Signaler une erreur
L'essentiel
- Une variable associe un nom à une valeur gardée en mémoire ; une affectation donne ou remplace cette valeur.65
- En algorithmique, on écrit l'affectation avec la flèche « ← » ; en Python, avec le signe « = ».3
- À droite du signe d'affectation, le calcul se fait d'abord avec les valeurs du moment ; le résultat est ensuite rangé dans la variable de gauche.
- Pour ne pas te tromper, tiens un tableau de suivi : une colonne par variable, une ligne par instruction.
- Échanger deux variables demande une variable intermédiaire (ou l'affectation multiple de Python).
Comment utiliser ces exercices
Ces exercices t'entraînent à lire, exécuter à la main et écrire de petits programmes qui utilisent des variables. La difficulté monte peu à peu : d'abord suivre des valeurs, ensuite repérer des erreurs, enfin traduire un calcul concret en instructions. Cherche chaque énoncé sur papier avant d'ouvrir les indices, puis compare avec la correction.
En algorithmique, on note l'affectation avec la flèche « ← » : a ← 5 se lit « a reçoit 5 ».3 En Python, la même instruction s'écrit a = 5. Dans ce second cas, le signe = ne veut pas dire « est égal à » comme en mathématiques : il ordonne de ranger une valeur dans une variable. C'est pour cela que n = n + 1 a du sens dans un programme, alors que l'équation n'en a aucun.
Les exercices
Exercice 1 Suivre trois affectations
On exécute l'algorithme suivant :
a ← 5
b ← a + 2
a ← b * 2
Quelle est la valeur finale de a ?
Indice 1
Fais un tableau avec deux colonnes, a et b.
Indice 2
Après la deuxième ligne, b ne dépend plus de a.
Voir la correction pas à pas
Ligne 1 :
areçoit 5. On a a = 5 ;bn'existe pas encore.Ligne 2 : on calcule a + 2 = 5 + 2 = 7, puis
breçoit 7. On a a = 5 et b = 7.Ligne 3 : on calcule b × 2 = 7 × 2 = 14, puis
areçoit 14. L'ancienne valeur 5 est perdue.Bilan : a = 14 et b = 7.
La valeur finale de a est 14. La variable b vaut toujours 7 : elle n'a pas suivi le changement de a.
Exercice 2 Quelles lignes sont valides en Python ?
Pour chaque ligne, dis si Python peut l'exécuter (après x = 4) et explique pourquoi.
y = x + 15 = zx = x * 3x + 1 = y
Indice 1
À gauche du signe = doit se trouver un nom de variable.
Indice 2
À droite, il faut une expression que Python sait calculer avec les valeurs connues.
Voir la correction pas à pas
Ligne 1 : valide. À droite, x + 1 se calcule (x vaut 4) et
yreçoit 5.Ligne 2 : invalide. À gauche se trouve le nombre 5, qui n'est pas un nom de variable : on ne peut pas y ranger une valeur.
Ligne 3 : valide. On calcule x × 3 = 12 avec l'ancienne valeur, puis
xreçoit 12.Ligne 4 : invalide. À gauche se trouve une expression de calcul, pas un nom de variable. On aurait dû écrire
y = x + 1.
Seules les lignes 1 et 3 sont valides. Retiens la règle : à gauche, un nom de variable ; à droite, une expression à calculer.
Exercice 3 Mettre à jour un compteur
On exécute :
n ← 4
n ← n + 1
n ← 2 * n
n ← n - 3
Quelle est la valeur finale de n ?
Indice 1
Une seule variable : une seule colonne dans ton tableau.
Indice 2
Chaque ligne part de la valeur laissée par la ligne précédente.
Voir la correction pas à pas
Ligne 1 : n = 4.
Ligne 2 : on calcule n + 1 = 4 + 1 = 5, donc n = 5.
Ligne 3 : on calcule 2 × n = 2 × 5 = 10, donc n = 10.
Ligne 4 : on calcule n − 3 = 10 − 3 = 7, donc n = 7.
La valeur finale est 7. Écrire n ← n + 1 revient à augmenter n de 1 : on lit l'ancienne valeur, on calcule, puis on range le résultat.
Exercice 4 L'ordre des instructions compte
Voici un programme Python :
a = 2
b = a + 1
a = 10
print(b)
- Qu'affiche ce programme ?
- Léa pensait voir apparaître 11. Explique son erreur.
Indice 1
Que contient b juste après la deuxième ligne ?
Indice 2
Modifier a plus tard change-t-il b ?
Voir la correction pas à pas
Ligne 1 : a = 2.
Ligne 2 : on calcule a + 1 = 3 avec la valeur actuelle de
a, etbreçoit 3.Ligne 3 :
areçoit 10. La variablebn'est pas recalculée : elle vaut toujours 3.Ligne 4 : le programme affiche la valeur de
b, c'est-à-dire 3.Léa a imaginé que
bvalait « a + 1 » en permanence, comme une formule. Orbne stocke que le résultat calculé au moment de l'affectation.
Le programme affiche 3. Pour obtenir 11, il faudrait réécrire b = a + 1 après avoir changé a.
Exercice 5 Échanger deux variables
On part de x ← 3 et y ← 8. On veut échanger les valeurs de x et y.
- Un élève écrit
x ← ypuisy ← x. Quelles sont les valeurs finales ? - Écris un algorithme correct avec une variable
t. - Après l'échange, calcule
x - y.
Indice 1
Dans la première version, qu'est devenue l'ancienne valeur de x ?
Indice 2
La variable t sert à garder une valeur en réserve avant de l'écraser.
Voir la correction pas à pas
Version de l'élève :
x ← ydonne x = 8. Mais l'ancien 3 est perdu. Puisy ← xdonne y = 8. Résultat : x = 8 et y = 8, l'échange a échoué.Version correcte :
t ← x(t = 3), puisx ← y(x = 8), puisy ← t(y = 3).Vérification : x = 8 et y = 3, les deux valeurs sont bien échangées.
On calcule x − y = 8 − 3 = 5.
Après l'échange, x - y vaut 5. Quand on écrase une variable, il faut avoir mis son ancienne valeur à l'abri. En Python, on peut aussi écrire x, y = y, x.
Exercice 6 Moyenne de trois notes
Un programme enregistre trois notes : a ← 12, b ← 15, c ← 9.
- Écris les instructions qui calculent la somme dans
s, puis la moyenne dansm. - Donne la valeur de
m.
Indice 1
Utilise d'abord une variable pour la somme, puis une autre pour la moyenne.
Indice 2
Pour la moyenne, divise par le nombre de notes.
Voir la correction pas à pas
Somme :
s ← a + b + c, soit s = 12 + 15 + 9 = 36.Moyenne :
m ← s / 3.On calcule m = 36 ÷ 3 = 12.
La moyenne vaut 12. Garder la somme dans une variable s rend le programme plus lisible et réutilisable.
Exercice 7 Une remise puis une hausse
Un article coûte 80 €. On exécute :
prix = 80
prix = prix * (1 - 0.15)
prix = prix * 1.2
- Que représente chaque ligne dans la situation ?
- Quelle est la valeur finale de
prix?
Indice 1
Multiplier par revient à retirer 15 %.
Indice 2
Multiplier par 1,2 revient à ajouter 20 %.
Voir la correction pas à pas
Ligne 1 : le prix de départ est 80 €.
Ligne 2 : on calcule 80 × 0,85 = 68, donc
prixvaut 68 : c'est le prix après une remise de 15 %.Ligne 3 : on calcule 68 × 1,2 = 81,6, donc
prixvaut 81,6 : c'est le prix après une hausse de 20 %.Remarque : les deux pourcentages ne se compensent pas, car ils s'appliquent à des prix différents.
La valeur finale est 81,6 €. La même variable prix a porté trois valeurs successives : 80, 68 puis 81,6.
Exercice 8 Aire d'un rectangle qui s'allonge
Un rectangle a une longueur L ← 7.5 et une largeur l ← 4 (en cm). On exécute :
A ← L * l
L ← L + 2
- Quelle est la valeur de
Aaprès la première ligne ? - Après la deuxième ligne,
Aa-t-elle changé ? - Quelle instruction faut-il ajouter pour que
Asoit l'aire du rectangle allongé ? Donne la nouvelle aire.
Indice 1
A garde-t-elle un lien avec L après la première ligne ?
Indice 2
Il faut recalculer A avec la nouvelle valeur de L.
Voir la correction pas à pas
Première ligne : A = 7,5 × 4 = 30 (en cm²).
Deuxième ligne : L devient 7,5 + 2 = 9,5. La variable
Ane bouge pas : elle vaut toujours 30.On ajoute
A ← L * là la fin.On calcule A = 9,5 × 4 = 38 (en cm²).
La nouvelle aire est 38 cm². Une variable calculée à partir d'autres doit être recalculée quand celles-ci changent.
Exercice 9 Itérer une formule
On exécute :
u ← 1
u ← 3 * u + 1
u ← 3 * u + 1
u ← 3 * u + 1
- Complète le tableau de suivi de
u. - Quelle est la valeur finale de
u? - Explique pourquoi la même instruction donne un résultat différent à chaque passage.
Indice 1
Écris la valeur de u après chaque ligne.
Indice 2
À chaque passage, la valeur de départ de u n'est plus la même.
Voir la correction pas à pas
Départ : u = 1.
Ligne 2 : 3 × 1 + 1 = 4, donc u = 4.
Ligne 3 : 3 × 4 + 1 = 13, donc u = 13.
Ligne 4 : 3 × 13 + 1 = 40, donc u = 40.
L'instruction est identique, mais elle lit la valeur courante de
u, qui a changé.
La valeur finale est 40. Cette façon de réutiliser le résultat précédent prépare les boucles que tu verras bientôt.
Les questions qu'on se pose
Pourquoi `n = n + 1` n'est-il pas absurde ?
En Python, le signe = ordonne une affectation ; il ne compare pas deux quantités. L'ordinateur calcule d'abord n + 1 avec la valeur actuelle de n, puis range le résultat dans n. En algorithmique, la flèche n ← n + 1 évite la confusion avec l'égalité mathématique.3
Quelle différence entre une variable et une constante ?
Comment vérifier un programme sans ordinateur ?
Construis un tableau de suivi : une colonne par variable, une ligne par instruction. Tu notes la valeur de chaque variable après chaque ligne. Cette méthode attrape la plupart des erreurs d'ordre ou d'écrasement de valeur.
Sources
- Programmes et ressources en mathématiques - voie GT, Éduscol. Consulté le 9 novembre 2026.
- 5 TP pour apprendre Python en 2nde, Édubase (Éduscol). Consulté le 9 novembre 2026.
- Ressources pédagogiques - Algorithmique programmation seconde, Éduscol. Consulté le 9 novembre 2026.
- Activités d'apprentissage - Variables et instructions en algorithmique, Éduscol. Consulté le 9 novembre 2026.
- Affectation, Wikipédia. Consulté le 9 novembre 2026.
- Variable (informatique), Wikipédia. Consulté le 9 novembre 2026.
Les numéros dans le texte renvoient à ces sources. Une source qui ne dit pas ce qu'on lui fait dire ? Signale-le.