Vérifier des programmes et .....

Il s'est agit dans ces deux séquences de revenir sur les recherches engagées.

Pour le second groupe de CM1, nous avons testé à nouveau les programmes écrits pour réaliser le carré et nous avons mené une analyse de retour sur chaque programme. Nous avons ensuite pris un programme spécifique, celui de Julien que nous avons analysé et fait évoluer pour trouver certaines solutions.

Pour le groupe de Cm2, une évaluation a été mise en place à partir d'un programme défini que je leur ai fourni. Ils devaient tout d'abord décrire les différentes étapes, puis ensuite imaginer le parcours du robot à partir de ce programme, sans le voir réaliser par le robot lui-même.

Les CM1:    

Les Cm2                            

 Programme d'Alice

 Texte descriptif de ce que fait le robot

 

 Le robot ne fait que tourner sans avancer et de plus il ne tourne pas bien à 90°. Il s'arrête à certains moments brefs après ses virages.

 

 Programme d'Angélique

 Texte descriptif de ce que fait le robot

 

 C'est presque le même programme que celui d'Alice, mais celui-ci il tourne à gauche au lieu de tourner à droite. Il n'avance pas non plus comme dans le premier programme.

Sur ces deux éléments, les enfants ont constaté que les programmes ne permettaient pas de faire tourner le robot de manière à réaliser un carré.

A partir du programme de Julien (ci-dessous), il a été possible d'adapter et de comprendre.

 Programme de Julien

 Texte descriptif de ce que fait le robot

 

 Cette fois-ci le robot a avancé une fois avant en fait de tourner quatre fois en attendant un peu entre chaque virage effectué.

Pourquoi le robot commandé par le programme de Julien a-t-il avancé alors que les deux autres se sont mis à tourner tout de suite?

Réponse des enfants: il manquait un "wait" dans les deux premiers.

Mais il n'avançait plus après le premier virage, il ne faisait que tourner. Pourquoi?

Réponse des enfants: après chaque tournant, les deux moteurs ne sont pas remis en route; il n'y a pas de bloc " On AC" pour le faire avancer.

Le programme de Julien a donc été modifié comme suit (Il est présenté sur deux colonnes pour une meilleure visualisation ici mais sinon la deuxième colonne est collée au bas de la première).

 

Les enfants ont donc reproduit le premier ensemble vert (3 pièces du puzzle) après chaque tourne droite 90.

En essayant sur le robot, on le voit bien faire quatre trajets rectilignes et quatre virages, mais les virages ne sont pas à 90°: il ne tourne pas assez.

Il a fallu d'ailleurs refaire plusieurs fois la même manip et les faire compter les trajets droits et les virages pour qu'ils se rendent compte qu'il y en avait 4 de chaque. Les premières réponses ont été 5, ou quatre droit et 5 virages.

Il fallait essayer de comprendre pourquoi:

La recherche s'est faite sur l'analyse d'un premier trajet et de l'ouverture du bloc tourne 90 à partir du programme d'Angélique qui avait présenté le même phénomène.

Les enfants devaient rechercher quelque chose au niveau des moteurs.

 

 En regardant ce programme, il est visible que le moteur rattaché à C continue de tourner quand on entre dans le virage à gauche à 90° (environ).

Les enfants ont donc pensé qu'il fallait arrêter le moteur C dans cet exemple avant de commencer le virage à droite 90.

Ils ont donc mis en application cette remarque sur le programme d'essai de Julien.

Ils ont ajouté une pièce "Off A" à la fin de chaque ligne droite, juste avant le virage à droite.

Ils auraient pu également faire un "Off C", mais comme dans le bloc tourne droite 90°, le premier ordre est un "on C", ils ont pensé que cela ne gènerait pas la progression du robot.

Ils ont proposé ensuite, après avoir remarqué que l'on écrivait quatre fois la même chose, de créer une commande spécifique avec le bloc de "my commands" comme va le montrer le schéma suivant, ci-dessous.

 

 

Ils ont appelé cette brique nouvelle de "my commands": Julienessai

Et ils l'ont enregistré de cette manière.

Il a été possible ensuite de leur présenter le stack controllers comme cela avait été fait avec le groupe CM2, la semaine précédente.

   

Ces deux clichés permettent de voir comment s'établit un bloc repeat. En l'ayant fait sortir du stack controllers et en le plaçant sur l'interface graphique, les enfants ont trouvé la similitude de présentation avec le bloc de my commands, ont voulu placer la brique jaune julienessai entre le repeat et le end repeat, tout en passant le compteur de 2 à 4. En développant le bloc julien essai, on voit apparaître ce qu'il contient.

Il ne restait plus qu'à tester sur le robot les deux programmes, celui final de julien avec les quatre étapes développées et celui utilisant le fonction repeat. Les deux trajats se sont avérés être les mêmes.

Les CM2:

A partir d'une photocopie d'un programme, deux consignes:

1) établir pour chaque pièce le rôle de celle-ci en le notant à l'aide d'une flèche sur le côté.

2) tracer le trajet présumé du robot sur le dos de la feuille.

Schéma présenté ci-dessous.

 

Les deux parties étant soudées sur le document présenté aux enfants.

Une analyse ultérieure des résultats sera présentée ici.

 

Retour page précédente.