Mes premiers pas en programmation
Avec Foufou le colibri, apprends à donner des ordres précis à une machine : d'abord sans ordinateur, puis avec des blocs, comme dans Scratch, jusqu'à créer ton propre mini-jeu. Rien n'est envoyé : tes étoiles restent sur ton appareil.
Avant de programmer, on écrit un algorithme : la liste des étapes, dans l'ordre. Choisis une mission.
Je retiens
Un algorithme est une suite d'instructions précises, dans un ordre précis, pour résoudre un problème. L'ordinateur ne devine rien : il exécute exactement ce qu'on lui dit.
Un programme, c'est un algorithme écrit avec des blocs. Touche un bloc pour l'ajouter, puis clique sur le drapeau vert.
Refais-le dans Scratch
- Ouvre Scratch et clique sur « Créer ».
- Catégorie Événements (jaune) : glisse « quand le drapeau vert est cliqué ».
- Catégorie Mouvement (bleu) : accroche « avancer de 10 pas » et remplace 10 par 50.
- Pour tourner : « tourner de 15 degrés », remplace 15 par 90 (la flèche indique le sens).
Dans Scratch, on avance en « pas » (des pixels) et on tourne en degrés. Ici, une case de Foufou vaut environ 50 pas, et un virage vaut 90 degrés.
Ouvrir Scratch ↗Je retiens
Un programme est un algorithme traduit dans un langage que la machine comprend, ici des blocs. Les instructions s'exécutent une par une, dans l'ordre : c'est une séquence.
Un événement, c'est ce qui déclenche un script : un clic sur le drapeau, une touche du clavier… Chaque script commence par un chapeau jaune « quand… ».
Refais-le dans Scratch
- Événements (jaune) : « quand la touche espace est pressée » ; choisis la touche dans le petit menu.
- Mouvement (bleu) : « s'orienter à 90 » puis « avancer de 50 pas ».
- Apparence (violet) : « dire Bonjou ! pendant 2 secondes ».
- Clique sur le drapeau vert, puis utilise le clavier.
Dans Scratch, l'orientation se donne en degrés : 90 vers la droite, -90 vers la gauche, 0 vers le haut, 180 vers le bas.
Ouvrir Scratch ↗Je retiens
Un événement déclenche un script : clic sur le drapeau, touche pressée, objet attrapé… Un programme peut contenir plusieurs scripts ; chacun commence par un chapeau « quand… » et attend son événement.
Une boucle répète des blocs. Touche le haut d'une boucle pour ajouter des blocs dedans, ou son pied pour ajouter après. Le nombre se change dans la pastille blanche.
Refais-le dans Scratch
- Contrôle (orange) : glisse « répéter 10 fois » et place des blocs dans sa « bouche ».
- Pour un carré : répéter 4 fois [avancer de 100 pas, tourner ↻ de 90 degrés].
- « répéter indéfiniment » : une boucle sans fin, qu'on arrête avec le panneau rouge.
Dans Scratch, « répéter indéfiniment » ne s'arrête jamais tout seul : c'est le panneau rouge (stop) qui l'arrête. Ici, Foufou s'arrête dès que la mission est réussie.
Ouvrir Scratch ↗Je retiens
Une boucle répète des instructions : « répéter 10 fois » quand on connaît le nombre de tours, « répéter indéfiniment » sans fin. Elle raccourcit le programme et évite les erreurs de recopie.
Une condition permet au programme de choisir : « si … alors … sinon ». Foufou utilise ses capteurs : il regarde devant lui, ou la couleur sous ses pattes.
Dans Scratch, puis avec le robot mBot
- Contrôle (orange) : « si … alors … sinon ». Capteurs (bleu clair) : « couleur … touchée ? » se glisse dans l'hexagone.
- Le robot mBot du collège fait pareil avec son capteur de ligne, dans mBlock : si le capteur voit la ligne noire, avancer ; sinon, tourner.
Scratch n'a pas de capteur « chemin libre » : on teste plutôt « couleur touchée ? » ou « touche le bord ? ». Sur le mBot, ce sont de vrais capteurs (ultrasons, suiveur de ligne).
Ouvrir Scratch ↗Je retiens
Une condition (« si … alors … sinon ») permet au programme de choisir selon la situation : obstacle devant, couleur détectée… L'information vient d'un capteur ; le même programme s'adapte alors à des situations différentes.
Une variable est une case mémoire qui porte un nom et contient un nombre qui peut changer. On voit sa valeur en haut à gauche du jardin.
Refais-le dans Scratch
- Variables (orange foncé) : clique sur « Créer une variable » et donne-lui un nom clair (score, compte…).
- Coche la case à côté de la variable pour voir sa valeur sur la scène.
- « mettre … à 0 » au départ, puis « ajouter 1 à … » quand il faut compter.
Dans Scratch, on crée soi-même chaque variable avant de l'utiliser. Ici, elles existent déjà dans la palette.
Ouvrir Scratch ↗Je retiens
Une variable est une case mémoire qui porte un nom et contient une valeur qui peut changer (score, compteur…). On l'initialise (« mettre à »), puis on la modifie (« ajouter ») ; le programme peut lire sa valeur.
Tout ce que tu as appris, dans un vrai petit jeu : attrape les mangues qui tombent dans le verger avant la fin du temps.
Ton jeu dans Scratch, puis sur le mBot
- Dans Scratch, la mangue devient un lutin à part (bouton « Choisir un lutin », ou dessine-la).
- Script de la mangue : « aller à x: (nombre aléatoire entre -200 et 200) y: 180 », puis « glisser » vers le bas.
- « si touche Foufou ? alors ajouter 1 à score » : la condition détecte qu'on l'a attrapée.
- Avec mBlock, les mêmes scripts « quand la touche … est pressée » peuvent piloter le vrai robot mBot.
Ici, l'événement « quand Foufou attrape une mangue » est fourni. Dans Scratch, on le fabrique soi-même avec une boucle et « si touche … ? » : c'est la même idée, en plus détaillé.
Ouvrir Scratch ↗Je retiens
Un jeu réunit tout : des événements (les flèches), une variable (le score), une condition (gagné ?) et souvent des boucles. Tester, trouver le bug, corriger, retester : c'est le travail de tous les programmeurs.
Mon programme
Les blocs
Un indice
🎯 Le défi final — 8 questions
Toutes les réponses sont dans les 7 ateliers ci-dessus.
Je retiens : la programmation en 7 idées
-
L'algorithme
Un algorithme est une suite d'instructions précises, dans un ordre précis, pour résoudre un problème. L'ordinateur ne devine rien : il exécute exactement ce qu'on lui dit.
-
Le programme et la séquence
Un programme est un algorithme traduit dans un langage que la machine comprend, ici des blocs. Les instructions s'exécutent une par une, dans l'ordre : c'est une séquence.
-
Les événements
Un événement déclenche un script : clic sur le drapeau, touche pressée, objet attrapé… Un programme peut contenir plusieurs scripts ; chacun commence par un chapeau « quand… » et attend son événement.
-
Les boucles
Une boucle répète des instructions : « répéter 10 fois » quand on connaît le nombre de tours, « répéter indéfiniment » sans fin. Elle raccourcit le programme et évite les erreurs de recopie.
-
Les conditions et les capteurs
Une condition (« si … alors … sinon ») permet au programme de choisir selon la situation : obstacle devant, couleur détectée… L'information vient d'un capteur ; le même programme s'adapte alors à des situations différentes.
-
Les variables
Une variable est une case mémoire qui porte un nom et contient une valeur qui peut changer (score, compteur…). On l'initialise (« mettre à »), puis on la modifie (« ajouter ») ; le programme peut lire sa valeur.
-
Le mini-jeu
Un jeu réunit tout : des événements (les flèches), une variable (le score), une condition (gagné ?) et souvent des boucles. Tester, trouver le bug, corriger, retester : c'est le travail de tous les programmeurs.
Colbi Techno · Mes premiers pas en programmation · Pour aller plus loin : Scratch (scratch.mit.edu), puis mBlock avec le robot mBot.
À voir aussi : la chaîne d'information (capteurs et actionneurs) et les autres outils du Labo.