EPIdémie - Recherche 6 (Activité programmation)

Activités disciplinaires en lien avec l’outil Scratch

 

Séance 1

Résumé

Initiation au logiciel Scratch

Discipline(s)

Mathématiques

Notions disciplinaires

Algorithmique et programmation

Capacités, Attitudes travaillées

Ecrire, mettre au point et exécuter un programme en réponse à un problème donné

Production

Programmes et animations correspondantes sur Scratch

Matériel nécessaire/utile

Ordinateur, logiciel Scratch (libre de droits)

Durée, modalités

1 séance

 

Modalité : par binôme.

 

  • 1ère étape : Prise en main du logiciel

Il est expliqué aux élèves que Scratch est un langage de programmation conçu spécifiquement pour apprendre à programmer. Ecrire un programme se fait simplement en emboîtant des blocs d’instructions. Lorsque l’on ouvre le logiciel, un lutin apparaît à l’écran (un chat). On peut lui donner des instructions simples. Demander alors aux élèves de trouver une façon de le faire avancer de 10 pas (10 pixels à l’écran). Après correction, on peut demander aux élèves de trouver comment faire avancer le chat de 20 pas. Puis, de conditionner l’avancée du chat à un clic sur un drapeau vert afin de montrer le système d’emboîtement des blocs. Enfin, de faire avancer le chat de 20 pas quand on clique sur le drapeau, puis de lui faire dire « Bonjour ! ».

Note pédagogique : les couleurs permettent de se repérer facilement dans la palette des blocs. Toutes les instructions relatives au mouvement du lutin sont en bleu (et on les trouve dans la palette bleue), toutes celles sur les événements sont en marron (comme par exemple « quand le drapeau vert est cliqué »), celles sur l’apparence du lutin (taille, costume, mais aussi parole, son…) sont en violet. On peut inviter les élèves à explorer l’environnement Scratch après avoir exécuté les petits scripts précédents.

 

  • 2ème étape : Planter le décor

Il est ici expliqué aux élèves que l’on peut modifier les lutins et les décors. Les élèves sont alors invités à supprimer le chat, et à créer un ours (ou le lutin de leur choix) en bas à droite. Enfin, ils doivent dessiner une rivière au milieu du décor.

Pour supprimer le chat, il faut cliquer (bouton droit) sur son icône, en bas à gauche de la fenêtre, et choisir « supprimer ».

Pour créer un nouveau lutin, il faut, dans la même zone, cliquer sur l’une des icônes en fonction de l’option choisie : importer depuis la bibliothèque Scratch, dessiner « à la main », importer depuis un fichier, ou prendre une photo (si l’ordinateur possède une webcam).

Pour modifier le décor, cliquer sur "Arrière-plans" puis utiliser les outils à disposition pour dessiner les figurés de son choix.

  • 3ème étape : Un premier programme

Les élèves sont invités à écrire leur premier programme. Le lutin (un ours par exemple) doit se déplacer de façon aléatoire dans le décor après que l’on ait cliqué sur un drapeau vert. L’enseignant peut faciliter la réussite de cette activité de 2 manières :

- à l’oral, expliciter les éléments nécessaires dans un tel programme : 1) ajouter le bloc « quand on clique sur le drapeau vert » ; 2) modifier les variables x ET y ; 3) rajouter un caractère aléatoire à l’aide de l’instruction « ajouter un nombre aléatoire compris entre a et b » ; 4) répéter cette action 10 fois ; 5) espacer les répétitions d’une seconde.

- directement sur Scratch, on peut proposer un programme contenant les blocs nécessaires et inviter l’élève à les agencer et éventuellement à leur compléter par des valeurs de façon à rendre le script efficace.

 

Séance 2

Résumé

Utilisation du logiciel Scratch

Discipline(s)

Mathématiques

Notions disciplinaires

Algorithmique et programmation

Capacités, Attitudes travaillées

Programmer des scripts contenant des variables informatiques, des boucles et des instructions conditionnelles

Production

Programmes et animations correspondantes sur Scratch

Matériel nécessaire/utile

Ordinateur, logiciel Scratch (libre de droits)

Durée, modalités

1 séance

 

Modalité : par binôme.

 

  • 1ère étape : Créer des costumes

Pour distinguer les individus susceptibles, malades et remis, on va utiliser des costumes différents : les élèves doivent utiliser un code couleur (blanc/rouge/vert) et leur donner un nom approprié.

  • 2ème étape : Créer des clones du lutin : introduction aux variables

Pour commencer, les élèves doivent d’abord modifier le programme pour qu’il crée 60 clones du lutin. Pour cela, il faut utiliser les deux blocs d’instructions nécessaires dans l’onglet « Contrôle ».

Attention : un si grand nombre de clones n’est pas obligatoire dans un premier temps mais il sera utile par la suite. Un grand nombre de clones implique que les lutins soient de petite taille. Il est possible de modifier la taille du clone à partir de l’onglet « Costumes ». Il est très utile de penser à recentrer le clone après avoir réduit sa taille. Pour cela, utilisez l’onglet « Définir le centre du costume » en haut à droite.

 

Introduction d’une nouvelle notion : la variable.

Une variable est un nom que l'on donne à une zone de mémoire. Elle permet de stocker une valeur et de la réutiliser plus tard, ou de la modifier.

Les élèves doivent maintenant créer une variable « population » puis modifier le programme pour qu’il crée un nombre de clones du lutin correspondant à l’effectif choisi pour la population.

Pour créer une variable, utiliser l’onglet « Données ». Pour attribuer une valeur à cette variable, utiliser le bloc d’instructions « mettre population à ». Pour utiliser une variable, faites-la glisser dans un bloc d’instructions.

  • 3ème étape : Introduire une instruction conditionnelle

On souhaite que les lutins ne traversent pas la rivière pour conserver deux populations séparées. Plusieurs solutions peuvent être suggérées ou trouvées par les élèves. Parmi celles-ci :

- « si le lutin touche un pixel bleu alors il doit retourner dans la situation opposée » ;

- dans le cas où la rivière est droite : « si le lutin dépasse une abscisse, il doit revenir à un point particulier ».

  • 4ème étape : Introduire la notion de test

On souhaite faire un système de comptage du nombre d’infectés pour créer un système d’alerte. Dès que le nombre d’infectés atteint 30, un message doit apparaître : « 50% touché ».

Pour cela, les élèves commencent par créer une variable nommée « Infectés ». Chaque fois qu’on bascule sur un costume « malade », il faut rajouter 1 à la valeur de la variable. Chaque fois qu’on bascule sur un costume « remis », il faut enlever 1 à la valeur de la variable. Ensuite, il faut utiliser la commande « attendre jusqu’à » et la compléter par un opérateur qui vous semble pertinent. Bien relire la consigne pour trouver comment compléter cette commande.

Enfin, il faut utiliser la commande « dire … pendant 0.3 secondes » pour que le message s’efface ensuite.

 

Séance 3

Résumé

Initiation à Scratch

Discipline(s)

Mathématiques

Notions disciplinaires

Algorithmique et programmation

Capacités, Attitudes travaillées

Comprendre les notions de : variables,  tests (instruction conditionnelle),  de séquences d’instructions. Décomposer un problème en sous-problèmes.

Production

Programmes et animations correspondantes sur Scratch

Matériel nécessaire/utile

Ordinateur, logiciel Scratch (libre de droits)

Durée, modalités

1 séance

 

Modalité : par binôme.

 

  • 1ère étape : Introduire un événement à caractère aléatoire

On souhaite qu’à chaque fois qu’un individu malade rencontre un individu sain, celui-ci ait une chance sur deux de tomber malade.

Pour répondre à la consigne, il faut tout d’abord concevoir qu’elle est formulable ainsi : « Si un individu sain croise un individu malade, alors il a une chance sur deux de devenir malade à son tour ». Il faut ensuite repérer les éléments dont nous allons avoir besoin :

- « Croiser un individu malade » revient à : toucher un pixel de couleur rouge.

- « Devenir malade » revient à : basculer du costume 1 au costume 2.

Pour introduire le caractère aléatoire, il faut utiliser la commande « nombre aléatoire entre 1 et 100 » qui consiste à tirer un nombre aléatoire entre 1 et 100 puis faire un test d’inégalité.

Remarque : On peut souhaiter vouloir modifier la valeur de 50 et créer une variable aléatoire « Contagiosité ».

 

  • 2ème étape : Introduire un nouvel événement conditionnel

On souhaite déclencher la campagne de vaccination au moment où l’on appuie sur la touche V du clavier.

Note : on peut aller plus loin si le temps le permet et préparer la dernière séance en introduisant deux nouvelles variables que l’on appellera ContagionD et ContagionG (ou une seule si on ne vaccine qu’une population). Cette variable permettra de faire varier le nombre d’individus vaccinés et de rechercher un effet plus fin de la vaccination (voir Séance 5).

Partenaires du projet

Fondation La main à la pâte