Pas à pas sur la grille : je code un lutin et j'écris un programme de construction
Imagine que tu guides un ami au téléphone pour qu'il trouve un trésor caché dans le jardin : « Fais trois pas tout droit, tourne à gauche, puis avance de deux pas. » Si tu dis « va par là-bas », il se perdra ! Un ordinateur, c'est pareil, en pire : il fait exactement ce qu'on lui dit, ni plus ni moins. Aujourd'hui, tu apprends à écrire des instructions précises, pour un personnage sur un quadrillage, puis pour un camarade qui doit tracer une figure sans la voir.
1. Se déplacer sur un quadrillage
On repère chaque case par une lettre (sa colonne, de gauche à droite) et un nombre (sa ligne, de bas en haut), comme à la bataille navale. Il existe deux façons de donner des ordres :
- les déplacements absolus : « monte d'une case », « va de 2 cases vers la droite ». Les directions sont celles de la feuille : haut, bas, gauche, droite ;
- les déplacements relatifs : « avance de 2 cases », « tourne à gauche ». Là, tout dépend de la direction dans laquelle le personnage regarde !
Exemple 1. Un robot est sur la case B2 et regarde vers la droite. Son programme : avance de 3 cases, tourne à gauche, avance de 2 cases. Il avance d'abord de B2 à E2 (B, C, D, E). Quand il tourne à gauche alors qu'il regarde vers la droite, il se met à regarder vers le haut. Il monte alors de 2 cases : il arrive en E4.
Astuce : pour tourner du bon côté, mets-toi à la place du personnage !
2. Programmer un lutin avec Scratch
Scratch est un logiciel gratuit où l'on programme en assemblant des blocs. Le personnage s'appelle un lutin (au départ, un chat orange). Il se déplace sur la scène, un rectangle de 480 pas de large et de 360 pas de haut. Quelques blocs utiles :
- « quand le drapeau vert est cliqué » : le programme démarre ;
- « s'orienter à 90 » : le lutin regarde vers la droite (0 : vers le haut ; 180 : vers le bas ; −90 : vers la gauche) ;
- « avancer de 100 pas » : il avance dans la direction où il regarde ;
- « tourner de 90 degrés » : il pivote sur place, vers la droite ou vers la gauche selon le bloc choisi ;
- « stylo en position d'écriture » : il laisse une trace en se déplaçant ;
- « répéter 4 fois » : il refait 4 fois les blocs placés à l'intérieur. C'est une boucle.
Exemple 2 : le carré.
quand le drapeau vert est cliqué
stylo en position d'écriture
répéter 4 fois
avancer de 100 pas
tourner ↻ de 90 degrés
Le lutin trace un côté de 100 pas, tourne d'un quart de tour, et recommence 4 fois : il dessine un carré et revient à son point de départ. Sans la boucle, il aurait fallu empiler 8 blocs au lieu de 2 !
Si le dessin n'est pas celui que tu voulais, ton programme contient un bug. Relis les blocs un par un en jouant le lutin avec ton doigt : corriger un bug, c'est déboguer.
3. Écrire un programme de construction
Un programme de construction est une liste d'étapes qui permet à quelqu'un de tracer une figure sans la voir. Pour qu'il soit lisible par un camarade :
- une seule action par étape, dans l'ordre où on trace ;
- des points nommés par des lettres majuscules ;
- le vocabulaire exact : le segment [AB] (le trait qui s'arrête en A et en B), la droite (AB) (le trait qui passe par A et B et se prolonge sans fin), le milieu, une droite perpendiculaire ou parallèle, le cercle de centre O et de rayon 3 cm ;
- toutes les mesures nécessaires.
Exemple 3 : un rectangle ABCD de 6 cm sur 4 cm.
- Trace un segment [AB] de 6 cm.
- Avec l'équerre, trace la droite perpendiculaire à [AB] qui passe par B.
- Sur cette droite, place le point C tel que BC = 4 cm.
- Trace la droite perpendiculaire à [AB] qui passe par A.
- Sur cette droite, place le point D, du même côté que C, tel que AD = 4 cm.
- Trace le segment [CD].
Compare avec « Fais un trait, puis un autre en dessous » : ni longueur, ni direction, chacun dessinera autre chose ! Pour tester ton programme, fais-le suivre à quelqu'un.
À retenir
- Un programme est une suite d'instructions précises, exécutées dans l'ordre.
- Déplacement absolu : haut, bas, gauche, droite de la feuille. Déplacement relatif : avancer et tourner, selon la direction du personnage.
- Dans Scratch, « répéter » crée une boucle : répéter 4 fois « avancer, tourner de 90 degrés » trace un carré.
- Un programme de construction : une action par étape, des points nommés, le vocabulaire exact ([AB] est un segment, (AB) une droite) et les mesures.
- Je teste toujours mon programme, et je le débogue si besoin.
★ Pour aller plus loin
Scratch a été créé par une équipe du MIT, une grande université américaine, et mis en ligne en 2007 ; des millions d'enfants y ont partagé leurs jeux depuis. Ses créateurs se sont inspirés du langage Logo, inventé à la fin des années 1960 avec le mathématicien Seymour Papert : les enfants y faisaient déjà avancer et tourner une « tortue » qui dessinait des figures.
Défi de pro : pour tracer un triangle équilatéral, le lutin doit tourner de 120 degrés à chaque coin, et non de 60 ! Ses trois virages font ensemble un tour complet : 3 × 120 = 360.