Canopée Toutes les notions de quatrième

Variables et tests

Écrire un programme qui teste une condition, et prévoir ce qu’il affiche.

Avant celle-ci

Cette notion s'appuie sur 2 autres, parfois d'un niveau plus bas. Si ça coince ici, c'est souvent là que ça se joue.

Une lettre en maths, une boîte en programmation

En maths, quand tu écris x, tu parles d’un nombre que tu ne connais pas. Il est inconnu, mais il ne bouge pas : dans tout l’exercice, x garde la même valeur.

En programmation, une variable est une boîte qui porte un nom. Elle contient une valeur à un moment donné, et cette valeur peut être remplacée plus loin dans le programme.

Même lettre, deux objets différents. Presque toutes les incompréhensions de ce chapitre viennent de là, et de nulle part ailleurs.

L’instruction qui n’aurait aucun sens en maths

Regarde cette ligne : x égale x plus 1. En maths, elle est impossible : aucun nombre n’est égal à lui-même plus un.

En programmation, elle est banale, parce qu’elle n’affirme aucune égalité. Elle dit : prends ce que contient la boîte x, ajoute 1, range le résultat dans x.

On la lit donc de droite à gauche : d’abord le calcul, ensuite le rangement. Certains langages l’écrivent avec une flèche, x reçoit x plus 1, et Scratch dit « mettre x à ». Ces écritures disent la même chose, en plus honnête.

Suivre un programme, ligne par ligne

Pour savoir ce que contient une variable à la fin, tu lis les lignes dans l’ordre. Après chaque ligne, tu notes le contenu de chaque boîte.

Écrire ce tableau n’est pas une béquille, c’est la méthode. Personne ne suit quatre mises à jour de tête sans se tromper une fois sur deux.

Voici où presque tout le monde se trompe

L’erreur n’est pas d’aller vite. Elle vient de trois ans de maths. L’élève lit le programme comme un système d’égalités, où chaque lettre garde sa valeur du début à la fin.

Il calcule alors la dernière ligne avec les valeurs de départ. Les lignes du dessus ont pourtant déjà changé le contenu des boîtes, et ce contenu-là ne revient pas en arrière.

La parade tient en une question, à te poser à chaque ligne : que contient cette boîte MAINTENANT ? Pas au début du programme, à cet instant précis.

À retenir

  • En maths, une lettre est un nombre fixe. En programmation, une variable est une boîte dont le contenu change.
  • x prend la valeur x + 1 se lit : calcule x + 1, puis range le résultat dans x.
  • Une ligne s’exécute avec le contenu du moment, jamais avec la valeur de départ.

Un exercice, tout de suite

Cherche d'abord, ouvre la correction ensuite. Se tromper ici ne coûte rien.

Exercice 1

Voici un programme. Suis-le ligne par ligne.

a prend la valeur 13

b prend la valeur 8

a prend la valeur a + b

b prend la valeur 2 × a

Quelle valeur contient b à la fin du programme ?

Voir la correction

On note ce que contient chaque boîte après chaque ligne.

Après les deux premières lignes, a contient 13 et b contient 8.

La troisième ligne calcule 13 plus 8 égale 21 et range ce résultat dans a. À partir de là, a ne contient plus 13.

La dernière ligne double le contenu ACTUEL de a : 2 fois 21 égale 42. À la fin, b contient 42.

Ce que ça ouvre ensuite

Vous êtes parent ? Cette page dit ce qu'il faut savoir. Elle ne dit pas si votre enfant le sait. C'est la question à laquelle Canopée répond dans son atelier : une notion ne compte comme acquise que le jour où l'élève réussit seul, sans indice, et qu'elle tient encore plusieurs jours plus tard. L'atelier ouvre aujourd'hui la sixième ; le parcours de troisième arrivera avec la prépa brevet 2027. Voir comment.