Les variables en Scratch : exercices corrigés pour la 4e

Après avoir manipulé les boucles et les conditions en classe de 5e, les élèves de 4e franchissent une nouvelle étape dans leur apprentissage de la programmation avec Scratch : la notion de variable. C'est un concept charnière, car il transforme un programme qui répète toujours les mêmes actions en un programme capable de mémoriser une information, de la faire évoluer, et de réagir en fonction de cette évolution. Un score qui augmente à chaque victoire, un chronomètre qui décompte, un niveau de difficulté qui progresse : toutes ces mécaniques, omniprésentes dans les jeux vidéo comme dans les objets techniques du quotidien, reposent sur l'usage de variables. Cet article détaille la logique pédagogique d'une fiche d'exercices consacrée aux variables en Scratch pour la classe de 4e, avec des exemples concrets et corrigés.

Comprendre ce qu'est une variable avant de manipuler Scratch

Avant même d'ouvrir Scratch, il est essentiel que les élèves comprennent ce qu'est une variable de manière abstraite. L'image la plus efficace, largement utilisée par les enseignants de technologie, est celle d'une boîte étiquetée dans laquelle on peut ranger une valeur, consulter son contenu à tout moment, et la remplacer par une nouvelle valeur. Cette boîte porte un nom choisi par le programmeur, comme « score » ou « vies », et son contenu peut être un nombre, un texte, ou une valeur logique selon les besoins du programme.

Cette analogie permet de désamorcer une confusion fréquente chez les élèves de 4e, qui assimilent parfois la variable à une simple étiquette fixe plutôt qu'à un contenant dont la valeur peut changer au fil de l'exécution du programme. Une fiche d'exercices efficace commence donc toujours par des questions de compréhension conceptuelle, indépendantes de Scratch, avant de passer à la manipulation technique du logiciel : « Si je crée une variable nommée score et que je lui donne la valeur 0, puis que je l'augmente de 5, puis encore de 3, quelle est sa valeur finale ? » Ce type de question, purement mathématique, prépare le terrain pour la manipulation dans Scratch.

Créer, afficher et modifier une variable dans Scratch

Techniquement, la création d'une variable dans Scratch se fait dans la catégorie orange foncé « Variables », en cliquant sur le bouton « Créer une variable » et en lui donnant un nom explicite. Une fois créée, la variable apparaît automatiquement sous forme de compteur affichable sur la scène, ce qui permet de visualiser sa valeur en temps réel pendant l'exécution du programme, un atout pédagogique précieux pour que les élèves observent concrètement l'effet de leur code.

Trois blocs principaux permettent ensuite de manipuler une variable : le bloc « mettre [variable] à [valeur] », qui fixe une valeur précise (par exemple remettre le score à zéro au début d'une partie) ; le bloc « ajouter [valeur] à [variable] », qui permet d'incrémenter ou de décrémenter la variable (ajouter 1 point, retirer une vie) ; et le bloc capteur « [variable] » lui-même, que l'on peut insérer dans une condition ou un affichage pour consulter sa valeur actuelle. Une bonne fiche d'exercices propose systématiquement des exercices ciblés sur chacun de ces trois blocs séparément, avant de les combiner dans des situations plus complexes.

Exemples d'exercices progressifs sur les variables

Le premier niveau d'exercice consiste à faire créer une variable simple et à l'initialiser correctement : « Crée une variable nommée vies, initialise-la à 3 au démarrage du programme, et affiche-la à l'écran. » La correction insiste sur un point souvent négligé par les élèves débutants : l'initialisation de la variable doit se faire dans un script déclenché par l'événement « quand le drapeau vert est cliqué », faute de quoi la variable conserverait la valeur de la précédente exécution du programme, ce qui provoque des bugs difficiles à comprendre pour un élève.

Le deuxième niveau d'exercice combine variable et condition, une association extrêmement fréquente dans les programmes réels : « Complète le script pour que le message Game Over s'affiche lorsque la variable vies atteint zéro. » Cet exercice fait le lien avec les notions apprises en 5e sur les conditions « si… alors », en les enrichissant d'un test numérique sur la valeur d'une variable, ce qui constitue une étape de complexification bien dosée pour une classe de 4e.

Le troisième niveau, plus proche d'un mini-projet, demande de programmer un système de score complet pour un jeu simple : chaque fois que le lutin touche un objet, le score augmente de 10 points, un son de récompense se déclenche, et le score s'affiche en permanence à l'écran. Cet exercice mobilise simultanément la création, l'affichage, la modification conditionnelle d'une variable, ainsi que des blocs de détection de contact, offrant une vision intégrée de toutes les compétences travaillées dans la fiche.

Les erreurs fréquentes à anticiper dans le corrigé

Un bon corrigé pédagogique anticipe les erreurs typiques commises par les élèves de 4e sur cette notion, afin que la correction serve aussi d'outil de diagnostic. La première erreur fréquente consiste à oublier de réinitialiser la variable au début du programme, ce qui produit un comportement incohérent d'une exécution à l'autre. La deuxième erreur consiste à confondre le bloc « mettre à » et le bloc « ajouter », en utilisant par exemple « mettre le score à 10 » à chaque point marqué au lieu de « ajouter 10 au score », ce qui empêche le score de véritablement s'accumuler.

La troisième erreur, plus subtile, concerne la portée de la variable : Scratch permet de créer des variables « pour tous les lutins » ou « pour ce lutin uniquement », et les élèves confondent parfois ces deux portées, ce qui provoque des bugs lorsque plusieurs lutins doivent partager une même information comme un score commun. Une fiche d'exercices complète propose au moins un exercice spécifiquement dédié à cette distinction, avec une explication claire dans le corrigé sur le choix approprié selon le contexte du projet.

Intégrer les variables dans un projet transversal

Pour donner davantage de sens à cette notion parfois perçue comme abstraite, il est pédagogiquement intéressant de relier les exercices sur les variables à un projet transversal, en lien avec d'autres disciplines. Un exemple particulièrement parlant consiste à programmer un simulateur de gestion d'une petite entreprise fictive, où une variable budget évolue selon les décisions prises par l'utilisateur : chaque choix, sélectionné via un menu de questions successives, ajoute ou retire une somme d'argent au budget, jusqu'à un bilan final qui indique si l'entreprise est bénéficiaire ou déficitaire. Ce type de projet, qui peut être mené en lien avec le cours de mathématiques ou d'éducation aux médias et à l'information, montre aux élèves que la notion de variable dépasse largement le cadre du jeu vidéo et s'applique à toute situation où une quantité évolue dans le temps.

Un autre exemple pertinent pour une classe de 4e consiste à simuler les données d'un capteur physique, en lien direct avec les séquences sur les systèmes automatisés : une variable température évolue aléatoirement dans une fourchette réaliste grâce à un bloc « nombre aléatoire entre… et… », et le programme déclenche différentes réactions visuelles selon les seuils atteints, exactement comme le ferait un thermostat connecté. Cette approche prépare efficacement les élèves à la manipulation ultérieure de vraies variables issues de capteurs, lorsqu'ils travailleront avec une carte Arduino ou micro:bit en fin de cycle 4.

Conclusion

La maîtrise des variables constitue une étape décisive dans le parcours de programmation d'un élève de 4e, car elle ouvre la porte à des projets réellement interactifs et dynamiques, bien au-delà des simples animations travaillées en 5e. En suivant une progression rigoureuse, de la compréhension conceptuelle de la boîte étiquetée jusqu'à la réalisation d'un système de score complet, en passant par des exercices ciblés sur chacun des blocs de manipulation, les élèves construisent une compréhension solide et durable de cette notion. Un corrigé détaillé, qui anticipe les erreurs les plus fréquentes plutôt que de se limiter à la solution attendue, transforme cette fiche en un véritable outil de progression pour la classe comme pour la maison.

Pour aller plus loin

Les variables s’appuient sur les notions de 5e : si besoin, reprends le cours de 5e sur Scratch et les 10 exercices sur les conditions. En 4e, elles se combinent naturellement avec les événements en Scratch, et le tutoriel du jeu de labyrinthe permet de les réinvestir avec un chronomètre et un compteur d’essais.

Pour voir des variables pilotées par de vrais capteurs, le TP porte de garage automatique avec micro:bit est l’étape suivante idéale. Et pour revoir tout le programme de l’année, le cours complet de Technologie 4e en PDF.

FAQ : questions fréquentes sur les variables en Scratch

1. Quelle est la différence entre une variable et une constante en programmation ?
Une variable peut changer de valeur au cours de l'exécution du programme, alors qu'une constante conserve toujours la même valeur. Scratch ne propose pas explicitement de constantes, mais on peut simuler ce comportement en créant une variable que l'on ne modifie jamais après son initialisation.

2. Pourquoi ma variable ne se remet pas à zéro quand je relance le programme ?
C'est l'erreur la plus fréquente : il faut ajouter un bloc « mettre la variable à 0 » directement sous l'événement « quand le drapeau vert est cliqué », sinon Scratch conserve la dernière valeur enregistrée de la variable.

3. Faut-il toujours afficher les variables à l'écran ?
Non, l'affichage est optionnel et se décoche facilement en cliquant sur la case à côté du nom de la variable dans la palette. Certaines variables techniques, utilisées uniquement en interne par le programme, n'ont pas besoin d'être visibles par l'utilisateur final.

4. Quelle est la différence entre une variable « pour tous les lutins » et « pour ce lutin uniquement » ?
Une variable « pour tous les lutins » est partagée et accessible par l'ensemble des personnages du projet, comme un score commun, tandis qu'une variable « pour ce lutin uniquement » n'est visible et modifiable que par le lutin qui l'a créée, ce qui est utile pour gérer des informations propres à chaque personnage.

5. Peut-on stocker du texte dans une variable Scratch, ou uniquement des nombres ?
Scratch permet de stocker aussi bien des nombres que du texte dans une même variable, sans distinction de type imposée par le logiciel, ce qui simplifie la manipulation pour des élèves débutants mais demande de rester vigilant sur la cohérence des opérations effectuées.

6. Comment ce travail sur les variables prépare-t-il à Python en fin de 3e ?
Le concept de variable est strictement identique en Python : seule la syntaxe change, avec une écriture du type score = 0 au lieu d'un bloc graphique. Un élève qui maîtrise solidement les variables en Scratch retrouve donc immédiatement ce concept en Python, sans avoir à le réapprendre depuis le début.

0 commentaire

Laisser un commentaire

Veuillez noter que les commentaires doivent être approuvés avant leur publication.