Programmer un robot (CM1)
Traduire un programme simple en langage naturel, l'utiliser pour faire agir un robot et choisir le programme le plus efficace.

CM1 · 9-10 ansSciencesPériode 5 (mai-juin)
Je retiens
- Un programme est une suite d'instructions exécutées dans l'ordre.
- Le robot fait exactement ce qu'on lui dit, ni plus ni moins.
- Une boucle répète plusieurs fois les mêmes instructions.
- Le programme le plus efficace atteint le but avec le moins d'instructions.
L'essentiel
Un robot ne réfléchit pas tout seul : il suit un programme. Un programme, c'est une liste d'instructions précises, rangées dans un ordre, que la machine exécute une par une.
On peut d'abord écrire un programme en langage naturel, avec des phrases simples :
- Avancer de 2 cases.
- Tourner à droite.
- Avancer de 1 case.
Puis on le traduit avec des flèches ou des blocs à assembler sur une tablette.
Pour un même trajet, plusieurs programmes sont possibles. On cherche le plus efficace : celui qui arrive au but avec le moins d'instructions ou le moins de déplacements.
Une boucle aide à raccourcir un programme. Pour faire dessiner un carré au robot, au lieu d'écrire huit instructions, on écrit :
- répéter 4 fois : avancer de 1 case, tourner à droite.
Quand le robot ne fait pas ce qu'on voulait, il y a un bug. On relit alors le programme instruction par instruction pour trouver l'erreur, puis on la corrige.
Des exemples
- Le robot est sur la case A1, tourné vers la droite. Il doit atteindre A4 : « avancer de 3 cases » suffit.
- Pour un zigzag, on répète deux fois : avancer, tourner à gauche, avancer, tourner à droite.
- Un robot aspirateur suit aussi un programme : avancer jusqu'à un obstacle, tourner, recommencer.
Attention au piège
Beaucoup d'élèves pensent que « tourner à droite » fait avancer le robot vers la droite. C'est faux ! L'instruction le fait seulement pivoter sur place. Il faut ensuite lui dire d'avancer. Autre piège : la droite et la gauche sont celles du robot, pas les tiennes. Quand il vient vers toi, sa droite est de ton côté gauche. Mets-toi à sa place pour vérifier.
Vérifie que tu as compris
- Qu'est-ce qu'une boucle dans un programme ?
- Le robot reçoit « tourner à gauche ». A-t-il changé de case ?
- Écris avec une boucle le programme : avancer, avancer, avancer, avancer.
Réponses :
- Une instruction qui répète plusieurs fois une suite d'instructions.
- Non, il a seulement pivoté sur place.
- Répéter 4 fois : avancer de 1 case.
Pour les parents
Jouez au robot à la maison : votre enfant est le programmeur, vous êtes le robot. Il doit vous guider de la porte d'entrée jusqu'au canapé avec seulement trois ordres : « avance d'un pas », « pivote à droite », « pivote à gauche ». Obéissez exactement, même si vous vous cognez gentiment dans un meuble ! Puis échangez les rôles.
Exemples de questions du jeu
Un programme, c'est…
une suite d'instructions pour une machine · une émission de télé · un dessin
Voir la réponse
une suite d'instructions pour une machine
Un algorithme, c'est…
un nombre très grand · un robot · une méthode en étapes pour résoudre un problème
Voir la réponse
une méthode en étapes pour résoudre un problème
Le bloc « répéter quatre fois avancer » fait avancer le robot de…
une case · huit cases · quatre cases
Voir la réponse
quatre cases
Le bloc « tourner à droite » fait…
pivoter le robot sans avancer · reculer le robot · arrêter le robot
Voir la réponse
pivoter le robot sans avancer
Deux programmes mènent au même endroit. Le plus efficace est…
celui qui a le plus de virages · le plus long · le plus court
Voir la réponse
le plus court
Ce que fait l’enfant
- remettre dans l’ordre
- questions à choix
- associer un mot et une image
Un copain animal lit les consignes à voix haute : l’enfant peut jouer seul, même s’il ne lit pas encore bien.