Mathématiques · CAPCAP
Variables et instructions : cours de CAP en mathématiques
Publié le 9 novembre 2026 · Mis à jour le 9 novembre 2026 · Signaler une erreur
L'essentiel
- Un algorithme est une suite finie d'instructions élémentaires qui conduit à la résolution d'un problème.2
- Une variable associe un nom à une valeur gardée en mémoire ; cette valeur peut changer pendant le programme.3
- L'affectation (
x = 5) range une valeur dans une variable : on calcule à droite du signe =, puis on range le résultat dans la variable à gauche. - Les instructions s'exécutent dans l'ordre, de haut en bas : pour comprendre un programme, on fait un tableau de suivi des valeurs.
- Choisis des noms évocateurs pour tes variables : le programme se lit et se corrige plus facilement.2
Pourquoi apprendre à programmer en mathématiques ?
En CAP, le programme de mathématiques contient un volet algorithmique et programmation. Il s'appuie sur le langage Python. On y rencontre trois outils de base : les variables, les instructions conditionnelles et les boucles.1 Ce cours s'occupe de la première étape : les variables et les instructions. Les conditions et les boucles viennent juste après.
Programmer, ce n'est pas réservé aux informaticiens. Tu calcules déjà des prix après remise, des aires de pièces, des quantités de matière. Un programme sait refaire ces calculs à ta place, sans erreur d'inattention, pour des dizaines de valeurs différentes. Pour cela, il faut savoir deux choses : où ranger les nombres (les variables) et quoi faire avec (les instructions).
Tu n'as besoin d'aucune notion préalable en programmation. Il suffit de savoir faire des calculs simples : additions, multiplications, pourcentages. Chaque idée est expliquée avec un exemple, puis tu t'entraînes sur des exercices corrigés.
Qu'est-ce qu'un algorithme ?
Une recette de cuisine ressemble beaucoup à un algorithme : une liste d'étapes, dans un ordre précis, qui mène à un résultat. Le mot finie compte : un algorithme doit se terminer. Si la liste d'étapes ne s'arrêtait jamais, tu n'obtiendrais aucun résultat.
Un programme est un algorithme écrit dans un langage que l'ordinateur comprend. Ici, ce langage est Python. L'ordinateur n'interprète rien : il exécute chaque instruction exactement comme elle est écrite. Si tu te trompes d'un signe, il fera le mauvais calcul sans te prévenir.
- PrixNoter le prix de départ
- TauxNoter le taux de remise
- RemiseCalculer le montant de la remise
- SoustractionRetirer la remise au prix
- AffichageAfficher le prix final
La variable : une case de mémoire avec un nom
Imagine une étiquette collée sur une boîte. L'étiquette est le nom de la variable. Le contenu de la boîte est sa valeur. Pour savoir ce que contient la boîte, il suffit de citer l'étiquette : dans un programme, on utilise le nom de la variable pour accéder à sa valeur et faire des calculs avec.2
La valeur d'une variable peut changer au cours du programme : c'est ce qui fait sa force.3 Tu peux ranger 5 dans la boîte, puis la vider et y ranger 12. L'étiquette, elle, ne bouge pas.
Un programme utilise des variables pour mémoriser les données dont il a besoin : un prix, une longueur, un score, un nombre de pièces.3
L'affectation : ranger une valeur dans une variable
Attention au signe =. En Python, il ne veut pas dire « est égal à » comme en mathématiques. Il veut dire : « range le résultat de droite dans la variable de gauche ». On le lit donc de droite à gauche.
Cette lecture explique une ligne qui paraît absurde en mathématiques :
x = x + 1
En mathématiques, n'a aucune solution. En Python, cette ligne a un sens parfait : l'ordinateur calcule d'abord x + 1 avec la valeur actuelle de x, puis range le résultat dans x. Si x valait 4, il vaut 5 ensuite. Ajouter 1 à une variable s'appelle l'incrémentation.1
Nommer ses variables correctement
Le nom d'une variable est libre, mais il suit des règles. Un nom commence par une lettre ou par le caractère souligné _. Il ne commence pas par un chiffre : cette règle évite toute ambiguïté, car un programme qui lit un chiffre sait qu'il lit un nombre, et s'il lit une lettre, il sait qu'il lit un nom de variable.3 Par exemple, prix1 est valide, 1prix ne l'est pas. On n'utilise pas d'espace dans un nom : on le remplace par un souligné, comme dans prix_ht.
Python distingue les majuscules des minuscules : Prix et prix sont deux variables différentes.
Au-delà des règles, il y a une bonne habitude : choisir des noms évocateurs. Ils rendent le programme plus facile à lire.2
Les types de variables
Une variable ne contient pas toujours un nombre. Le programme de CAP demande de savoir choisir ou reconnaître le type d'une variable, notamment les entiers.1 Voici les types que tu rencontreras en Python :
| Type | Contenu | Exemple |
|---|---|---|
| int | nombre entier | 12 |
| float | nombre décimal | 7.5 |
| str | texte | "bonjour" |
| bool | vrai ou faux | True |
Le type compte, car il décide de ce que tu peux faire. On peut additionner deux nombres. Additionner un nombre et un texte provoque une erreur. Et "3" + "4" ne donne pas 7, mais le texte "34" : les deux textes sont collés l'un après l'autre.
Il est possible de convertir une variable d'un type vers un autre.2 Par exemple, int("3") transforme le texte "3" en nombre entier 3, et str(3) fait l'inverse. La fonction type(x) indique le type d'une variable x.
Les instructions et leur ordre d'exécution
Un programme est une suite d'instructions. Une instruction est un ordre donné à l'ordinateur : affecter une valeur, faire un calcul, afficher un résultat. On retrouve ici la définition de l'algorithme : une liste d'instructions élémentaires.2
Les instructions s'exécutent l'une après l'autre, de haut en bas, sans jamais revenir en arrière tant qu'aucune boucle n'est utilisée. Inverser deux lignes peut donc changer complètement le résultat.
Trois instructions suffisent pour la plupart des programmes de ce niveau :
- l'affectation :
x = 5; - le calcul, qui s'écrit à droite d'une affectation :
y = 2 * x + 1; - l'affichage, avec
print(), qui montre la valeur d'une variable ou d'un calcul. Par exemple,print(y)affiche la valeur dey.1
Suivre un programme avec un tableau de suivi
- ColonnesUne colonne par variable
- LignesUne ligne par instruction
- CalculCalculer à droite avec les valeurs précédentes
- Mise à jourChanger seulement la variable affectée
Échanger deux variables et autres schémas classiques
Un problème célèbre : on a a = 4 et b = 9, et on veut échanger les valeurs. Essayons naïvement :
a = b
b = a
Après la première ligne, a vaut 9. Mais l'ancienne valeur 4 est perdue, écrasée. La seconde ligne range donc la valeur 9 dans b, qui vaut déjà 9. Résultat : les deux variables valent 9.
Pour réussir, on utilise une variable temporaire qui garde la valeur en attente :
temp = a
a = b
b = temp
Suivi : temp reçoit 4 ; a reçoit 9 ; b reçoit 4. Les valeurs sont échangées.
Deux autres schémas reviennent souvent.
Le compteur. On range 0 dans une variable, puis on lui ajoute 1 à chaque événement : nb = nb + 1. Cette instruction d'incrémentation est la base des boucles.1
L'accumulateur. On range 0 dans total, puis on ajoute chaque nouveau montant : total = total + montant. On l'utilise pour calculer une facture, une moyenne ou une somme de mesures.
Un programme complet, étape par étape
Exercices corrigés
Exercice 1 Prix après remise
Un article coûte 80 €. Une remise de 15 % est appliquée.
On écrit le programme :
prix = 80
remise = prix * 0.15
prix_final = prix - remise
print(prix_final)
Quelle valeur ce programme affiche-t-il ?
Indice 1
Calcule d'abord la valeur de remise.
Indice 2
Ensuite, soustrais-la à prix.
Voir la correction pas à pas
La variable
prixreçoit 80.La variable
remisereçoit .La variable
prix_finalreçoit .print(prix_final)affiche 68.
Le programme affiche 68, c'est-à-dire un prix final de 68 €.
Exercice 2 Suivre un programme
On considère le programme suivant :
a = 5
b = a + 3
a = b * 2
b = a - b
resultat = a + b
Fais un tableau de suivi puis donne la valeur finale de resultat.
Indice 1
Une ligne du tableau par instruction.
Indice 2
Dans a = b * 2, utilise la valeur de b obtenue à la ligne précédente.
Voir la correction pas à pas
Après
a = 5: a vaut 5.Après
b = a + 3: b vaut .Après
a = b * 2: a vaut ; b reste 8.Après
b = a - b: b vaut ; a reste 16.Après
resultat = a + b:resultatvaut .
La valeur finale de resultat est 24.
Exercice 3 Prix toutes taxes comprises
Un artisan facture 250 € hors taxes. La TVA est de 20 %.
- Écris un programme Python avec des noms de variables évocateurs qui calcule le prix TTC et l'affiche.
- Donne la valeur affichée.
Indice 1
Le montant de la TVA se calcule avec prix_ht * 0.2.
Indice 2
Le prix TTC est la somme du prix hors taxes et de la TVA.
Voir la correction pas à pas
Données :
prix_ht = 250ettaux_tva = 0.2.Calcul de la TVA :
montant_tva = prix_ht * taux_tva, soit €.Calcul du prix TTC :
prix_ttc = prix_ht + montant_tva, soit €.Affichage :
print(prix_ttc), qui donne 300.
Le programme affiche 300, soit un prix TTC de 300 €.
Exercice 4 Échanger deux variables
On a a = 7 et b = 2. On veut que a contienne 2 et b contienne 7.
- Explique pourquoi les lignes
a = bpuisb = ane fonctionnent pas. - Écris un programme correct avec une variable temporaire.
- Fais le tableau de suivi.
Indice 1
Que devient l'ancienne valeur de a après a = b ?
Indice 2
Range la valeur de a dans une troisième variable avant de la remplacer.
Voir la correction pas à pas
Avec
a = b, la variableareçoit 2 et l'ancienne valeur 7 est écrasée.Avec
b = a, la variablebreçoit la valeur actuelle dea, donc 2 : les deux variables valent 2.Programme correct :
temp = a, puisa = b, puisb = temp.Suivi : après
temp = a, temp vaut 7 ; aprèsa = b, a vaut 2 ; aprèsb = temp, b vaut 7.État final :
avaut 2,bvaut 7 : l'échange est réussi.
La variable temporaire garde en mémoire la valeur qui serait sinon écrasée.
Quiz
8 questions · correction immédiate · ton score reste sur ton appareil.
-
Une variable relie un nom à une valeur gardée en mémoire.3 L'affichage est le rôle de
print, pas d'une variable. Et la valeur d'une variable peut changer pendant le programme, ce qui exclut la proposition « jamais changer ». Les symboles+et*sont des opérateurs. -
L'ordinateur calcule d'abord
x + 1avec l'ancienne valeur 4, soit 5, puis range 5 dansx. Dire que l'égalité est impossible, c'est confondre l'affectation avec l'égalité mathématique.41viendrait d'un collage de textes, ce qui n'est pas le cas ici. -
prix_htcommence par une lettre et utilise un souligné.2prixcommence par un chiffre, ce qui est interdit pour éviter la confusion avec un nombre.3prix htcontient un espace etprix-htun tiret, que Python lit comme une soustraction. -
On calcule d'abord le membre de droite avec la valeur actuelle : . Puis 14 est rangé dans
x. Si tu as trouvé 20, tu as sans doute additionné avant de multiplier : la multiplication est prioritaire. -
C'est faux :
yvaut 7. Elle a reçu sa valeur quandxvalait 3, et ne se met pas à jour quandxchange ensuite. Croire à 14, c'est confondre une variable avec une formule de tableur qui se recalcule. -
Les guillemets indiquent des textes. Additionner deux textes les colle l'un après l'autre : le résultat est "34". Le nombre 7 s'obtiendrait avec
3 + 4. Il n'y a pas d'erreur ici, car les deux éléments ont le même type. -
La variable temporaire garde l'ancienne valeur de
aavant qu'elle soit écrasée. Le premier et le troisième essais font perdre une valeur : les deux variables finissent égales. Le dernier essai donneavalant 9 etbvalant 9, donc n'échange rien. -
Des noms parlants rendent le programme plus facile à lire.2 Python accepte très bien
aoux, la vitesse d'exécution ne change pas, et le type dépend de la valeur rangée, pas du nom.
Les questions qu'on se pose
Pourquoi `x = x + 1` n'est-il pas faux alors qu'en maths c'est impossible ?
Le signe = de Python est une affectation : il range le résultat de droite dans la variable de gauche. L'ordinateur calcule d'abord x + 1 avec l'ancienne valeur, puis range ce résultat dans x. Ce n'est pas une équation à résoudre. On appelle cela l'incrémentation quand on ajoute 1.1
Quelle différence entre `print(x)` et `x` tout seul ?
print(x) affiche la valeur de x dans la console.1 Une variable écrite seule, dans un fichier de programme, ne montre rien : si tu veux voir un résultat à l'écran, utilise print.
Dois-je savoir écrire du Python par cœur à l'examen ?
Le programme demande surtout de lire, comprendre et compléter des programmes courts : repérer ce que fait une affectation, prévoir un résultat, corriger une ligne. Entraîne-toi à faire des tableaux de suivi et à écrire les calculs en Python. Pour la forme précise de l'épreuve, réfère-toi aux consignes de ton établissement.
Que faire quand Python affiche un message d'erreur ?
Lis le message : il indique souvent la ligne en cause. Les erreurs fréquentes sont une variable utilisée avant d'avoir reçu une valeur, un nom mal écrit (majuscule oubliée), un nombre mélangé avec un texte, ou une virgule à la place du point décimal. Corrige ligne par ligne, en vérifiant chaque nom.
Une variable peut-elle changer de type ?
En Python, oui : après x = 3, tu peux écrire x = "trois". Cela marche, mais ce n'est pas une bonne habitude, car le programme devient difficile à relire. Pour changer volontairement de type, utilise une conversion, comme int("3").2
Sources
- Algorithmique et programmation - Programme CAP mathématiques, Éduscol. Consulté le 9 novembre 2026.
- Repères pédagogiques - Variables et affectation en algorithmique, Académie de Lille. Consulté le 9 novembre 2026.
- Variable (informatique), Wikipédia. Consulté le 9 novembre 2026.
- Jeu d'instructions, 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.