(Francais) Dash & Dot: Introduction aux variables en programmation (4e et 5e année)
Description Savoir reconnaître et analyser les schémas est d'une grande importance lorsqu'on apprend à programmer. Dans cette leçon, les élèves apprendront comment utiliser les variables en programmat

Educational Standards - Ontario
Grade 4 - Math
Patterning and Algebra
– extend, describe, and create repeating, growing, and shrinking number patterns (e.g., “I created the pattern 1, 3, 4, 6, 7, 9, …. I started at 1, then added 2, then added 1, then added 2, then added 1, and I kept repeating this.”);
– create a number pattern involving addition, subtraction, or multiplication, given a pattern rule expressed in words
– make predictions related to repeating geometric and numeric patterns
Leçon
Aperçu et préparation
Description
Savoir reconnaître et analyser les motifs est d'une grande importance lorsqu'on apprend à programmer. Dans cette leçon, les élèves apprendront comment utiliser les variables en programmation.
Objectifs
-
Reconnaître comment un motif répond à une règle.
-
Identifier les caractéristiques apparentes d'un motif qui ne font pas explicitement partie de la règle.
-
Comprendre qu'une variable est une valeur que l'on peut changer.
- Identifier la règle d'un motif.
Robotique et accessoires
Autres accessoires
- Tablettes - (liste des appareils compatibles)
- Présentation Introduction aux variables
- Feuille d'enregistrement du motif
- Projecteur ou imprimés du code Blockly de la partie A
- Projecteur ou imprimés du code Blockly de la partie B
- 2 boîtes par groupe
- Objets que l'on peut utiliser comme compteurs comme des billes, des trombones ou des morceaux de papier
Classe 1 : Motifs et variables (~40 min)
Préparation
Avant le début de la leçon, programmer Dash en utilisant un exemple de motif. Ce motif consistera à faire faire des « bips » orange à Dot puis à le faire clignoter. Les « bips » orange commencent à 1 et augmentent de 3 à chaque clignotement.
On trouvera l'explication de ce programme dans la présentation Introduction aux variables. Ne pas montrer ce programme aux élèves avant qu'ils aient vu cette présentation.
À la recherche du motif de Dash
Au début de la leçon, montrer le motif aux élèves.
Les élèves enregistreront le nombre de « bip » que fait Dash entre deux clignotements. Dans cet exemple, Dash émettra 1, 4, 7, 10 et 13 fois.
Demander aux élèves de décrire les motifs qu'ils ont observés avec les nombres.
- Chaque nombre augmente de 3 le nombre précédent.
- Les nombres qui se succèdent alternent entre les nombres impairs et pairs.
Présentation Introduction aux variables
Ouvrir la présentation Introduction aux variables. Utilisez cette présentation pour montrer aux élèves ce que sont les variables et comment les utiliser. Les élèves pourront former des groupes et partager les iPads durant les présentations.
Diapo 1 : Qu'est-ce qu'une variable ?
Mettre l'accent sur le fait qu'une variable est un peu comme un conteneur, ou une boîte. On peut y mettre des éléments, les enlever et à tout moment, il suffit d'ouvrir le conteneur pour voir ce qu'il y a dedans. Les variables fonctionnent de la même manière.
Diapo 2 : Pourquoi utiliser des variables ?
Les divers points qui figurent sur cette diapo seront expliqués plus en détail lors de la présentation. Rappeler aux élèves qu'il est important que leur code soit facile à lire et à modifier non seulement par eux, mais par les autres élèves également. Les élèves doivent être capables de comprendre parfaitement ce qu'ils tentent de faire. C'est ce que font les bons programmeurs!
Diapo 3 - Les variables dans Blockly
Configurer une variable : vous ignorez ce qu'il y a dans la boîte. Quelqu'un vous dit qu'il a ajouté 3 blocs dans la boîte. Qu'y a-t-il dans la boîte maintenant ? Vous l'ignorez! Vous devez donc toujours configurer une valeur initiale à une variable dans Blockly.
Diapo 4 - Les variables dans Blockly
Configurer une variable : d'abord, insister sur le fait que l'on peut configurer des variables pour toutes sortes d'éléments, par exemple les valeurs d'autres variables ou des nombres aléatoires. Dans cette leçon, les élèves n'utiliseront pas les nombres aléatoires, mais ils devront configurer une variable qui aura une valeur égale à une autre variable.
Diapo 5 - Les variables dans Blockly
Changer une variable : les élèves utiliseront cette fonction pour créer un motif, par exemple programmer X clignotements de Dash puis, à chaque reprise, augmenter de 2 le nombre de clignotements à chaque reprise.
Diapo 6 - Les variables dans Blockly
Les boucles et les variables : bien expliquer aux élèves que si une boucle consiste à « répéter ce qui a été configuré à l'intérieur de la boucle jusqu'à ce que les conditions de cette configuration ne tiennent plus », alors dans ce cas, la condition est « orange est plus grand que 0 ». Cela signifie que la boucle se répétera jusqu'à ce que la valeur de la variable orange soit 0.
Mener le programme avec les élèves en faisant le décompte de la variable et en klaxonnant à chaque fin de boucle. Écrire le nombre au tableau chaque fois qu'une boucle se termine.
Ainsi, il y a aura 5 coups de klaxon :
- Orange = 5.
- Klaxon, orange = 4.
- Klaxon, orange = 3.
- Klaxon, orange = 2.
- Klaxon, orange = 1.
- Klaxon, orange = 0.
- Orange n'est maintenant pas plus grand que 0... Stop!
Expliquer aux élèves les raisons pour lesquelles il pourrait être approprié d'utiliser une variable dans une telle situation.
- Qu'arrive-t-il si plusieurs boucles se répètent 5 fois et que vous voulez qu'elles se répètent 6 fois ? Il vous faudra alors changer la valeur pour toutes les boucles. Mais avec une variable, il suffira de changer la valeur de la variable une seule fois! Facile!
Diapos 7 à 9 - Les variables dans Blockly
Exemple de motif : si vous utilisez ce motif en introduction, dire aux élèves que ce programme reprend le même motif des buzz et des clignotements précédent.
Cet exemple suppose l'utilisation de deux variables.
- La première variable, orange, représente le nombre de buzz que Dash fera à chaque ronde. On se souvient que précédemment, Dash faisait un buzz 1 fois, puis 4 fois et 7 fois. La variable enregistrera ce motif.
- La deuxième variable, melon d'eau, permet de programmer Dash pour qu'il fasse des buzz exactement un nombre « orange » de fois. Ainsi, comme dans l'exemple de la diapo précédente, la boucle se répète jusqu'à ce que les conditions de la configuration ne tiennent plus.
Exécuter le programme avec les élèves pour qu'ils apprennent bien comment fonctionnent les boucles. Inscrire au tableau les résultats des premières boucles :
Demander aux élèves de dire comment ils pourraient exécuter ce programme s'il n'y avait pas de variable :
- Klaxon, clignotement
- Répéter 4 fois, klaxon, puis clignotement
- Répéter 7 fois, klaxon, puis clignotement
- Répéter 10 fois, klaxon, puis clignotement
Cette séquence se poursuivrait aussi longtemps que l'on veut répéter ce motif. Cela fait beaucoup de codage! Et c'est justement là que le recours aux variables peut faire en sorte que votre programme sera beaucoup plus court ET beaucoup plus facile à lire. Lorsqu'on utilise des variables, on peut facilement voir le déroulement du programme et apporter des modifications au motif.
Présentation Introduction to Variables
Classe 2 : Variables personnelles (~20 min) - Activité sans tablette
Activité sans tablette : suivre les variables
Former des groupes de 4 ou 5 élèves.
Remettre deux boîtes à chaque groupe de même que deux ou trois imprimés montrant des codes Blockly ainsi que des objets pouvant servir de compteurs.
Les travailleront dans chaque bloc de codes.
- Un ou deux élèves tiendront une boîte représentant une variable.
- Une élève lira aux autres le code Blockly.
- En utilisant les compteurs, un élève enregistrera les changements de valeurs de la variable.
- Un élève jouera le rôle de Dash et exécutera le code.
À chaque bloc de code, les élèves changeront de rôle.
Classe 3 : Défi de programmation (~40 min)
Défis : programmer des motifs
Former des groupes de 4 élèves.
Demander aux élèves d'utiliser des variables pour qu'ils programment pour Dash ou Dot un motif simple que le robot pourra exécuter. Chaque groupe concevra et programmera un motif qui sera déclenché lorsqu'on appuiera sur le bouton supérieur. Demander aux élèves de concevoir un motif complètement différent de celui utilisé dans l'exemple.
- Si les élèves éprouvent des difficultés, leur demander à quoi ressemblera le motif si le nombre double à chaque fois ? Ou si ce nombre augmente, puis diminue ?
- Comment faire pour que Dash émette plus de sons ? Qu'il se place plus rapidement ? Plus loin? Plus lentement ? Qu'il effectue plus de virages ?
Voici quelques possibilités...
Exemple 1
Dans cet exemple simple, les élèves conçoivent un motif où le nombre de clignotements de Dash augmente.
Variable cerise : nombre de clignotements que fera Dash. Commence à 1 et augmente en multipliant par trois à chaque nouvelle ronde.
Dash clignotera donc 1 fois, puis 3 fois, 9 fois et 27 fois et dira « Bonjour » pour signaler la fin de chaque ronde.
Variable citron : utilisée pour compter le nombre de clignotements de Dash à chaîne des rondes. Elle est remise à zéro au début de chaque ronde.
Exemple 2
Cet exemple est un motif complexe et fait une excellente utilisation des variables.
Dans cet exemple, les élèves programment un motif alternatif où Dash tourne sur lui-même. À chaque ronde, le nombre de tours sur lui-même que fait Dash est augmenté de 3, puis réduit de 2.
Le motif sera le suivant : 1, 4, 2, 5, 3, 6.
La variable cerise pour régler le nombre de tours sur lui-même qu'effectuera Dash.
Les variables orange et banane sont respectivement configurées pour régler l'augmentation (3) et la diminution (2).
Après la premiere répétition, la variable citron est remise à zéro et la variable cerise est augmentée un nombre orange de fois (3).
Après la seconde répétition, la variable citron est remise à zéro et la variable cerise est réduite d'un nombre banane de fois (2).
Trois répétitions donnant le motif 1, 4, 2, 5, 3, 6.
Rotations
Lorsque tous les groupes ont terminé, leur motif, le robot de chaque groupe devient une station et les groupes se succèdent aux diverses stations, sans avoir en main leur tablette afin qu'ils ne puissent avoir accès au code des divers robots.
À chaque station, Dash effectuera le motif et les élèves enregistreront les résultats. Ils décriront par écrit le motif ou les motifs réalisés par Dash.
Lorsque tous les élèves sont passés à toutes les stations, leur demander de retourner à leur station. Demander alors aux élèves d'expliquer les motifs qu'ils ont vus. Demander à chaque groupe d'expliquer le motif qu'il a programmé.
Activité complémentaire
Demander aux élèves plus âgés ou plus avancés de rédiger la règle de leur motif en mode algébrique. Par exemple, la formule algébrique du programme d'introduction serait : Let an = nombre de buzz. a0 = 1 et an + 1 = an + 3.
Feuille d'enregistrement du motif
Imprimer et remettre une feuille à chaque élève.
Évaluation
Utiliser cette feuille pour évaluer les élèves.
Extraits de code
Extrait de code 1
Extrait de code 2
Extrait de code 3
Matériel à télécharger
Educational Standards - Alberta
Grade 5 - Mathematics
PATTERNS AND RELATIONS (Patterns)
1. Determine the pattern rule to make predictions about subsequent elements. [C, CN, PS, R, V]
PATTERNS AND RELATIONS (Variables and Equations)
2. Express a given problem as an equation in which a letter variable is used to represent an unknown number (limited to whole numbers). [C, CN, PS, R]
Grade 5 (Division 2) - Information and Communication Technology
Foundational Operations, Knowledge and Concepts
F1 - 2.1 apply terminology appropriate to the technologies being used at this division level
F3 - 2.2 work collaboratively to share limited resources
F3 - 2.3 use appropriate communication language and etiquette
F6 - 2.1 power up and power down various technologies and peripherals correctly
F6 - 2.3 use peripherals, including printers and scanners
Educational Standards - New Brunswick
Grade 4 Mathematics
Grade 5 Mathematics
2. Solve problems involving single-variable, one-step equations with whole number coefficients and whole number solutions
Educational Standards - British Columbia
Grade 5 - Mathematics
Content
- rules for increasing and decreasing patterns with words, numbers, symbols, and variables
- one-step equations with variables
Curricular Competencies
- Develop mental math strategies and abilities to make sense of quantities
- Use technology to explore mathematics
- Model mathematics in contextualized experiences
- Develop, demonstrate, and apply mathematical understanding through play, inquiry, and problem solving
- Visualize to explore mathematical concepts
- Develop and use multiple strategies to engage in problem solving
- Communicate mathematical thinking in many ways
- Represent mathematical ideas in concrete, pictorial, and symbolic forms
Grade 4-5 Applied Design, Skills, and Technologies
Content
Students are expected to use the learning standards for Curricular Competencies from Applied Design, Skills, and Technologies 4–5 in combination with grade-level content from other areas of learning in cross-curricular activities to develop foundational mindsets and skills in design thinking and making
Curricular Competencies
- Use materials, tools, and technologies in a safe manner, and with an awareness of the safety of others, in both physical and digital environments
- Use familiar tools and technologies to extend their capabilities when completing a task
- Choose appropriate technologies to use for specific tasks
- Demonstrate a willingness to learn new technologies as needed
