Projet « Cryptographie » – Séance 13 (optionnelle) Programmer l’affichage de l’histogramme (1)
1, 2, 3, codez ! - Activités cycle 4 - Projet « Cryptographie » - Séance 13 (optionnelle) : Programmer l'affichage de l'histogramme (1/2)
Discipline dominante |
Mathématiques |
Résumé |
Les élèves perfectionnent leur programme précédent pour qu’il affiche l’histogramme des fréquences du texte analysé. Ils tracent les axes du graphique et utilisent des costumes (notions propres à Scratch) afin de légender l’axe des abscisses. |
Notions |
Idem séances précédentes |
Matériel |
Idem séances précédentes |
Note pédagogique
Dans Scratch, chaque lutin possède un « stylo », ce qui lui permet (s’il l’abaisse) de tracer des traits. Cette fonctionnalité est très intéressante pour réaliser des figures géométriques ou, comme ici, tracer des courbes.
Étape 1 : définir les différentes étapes du projet (10 minutes)
Il est très peu probable que des élèves de cycle 4, qui découvrent tout juste les fonctions (en mathématiques) et leur représentation graphique, soient capables d’expliciter, tous seuls, un algorithme permettant de créer un graphique et de dessiner des courbes.
Nous conseillons donc de réaliser cette étape collectivement.
Difficulté |
Nom de l’étape |
Nature des tâches à réaliser |
Étape 1 : définir les différentes étapes du projet |
|
|
Étape 2 : tracer les axes du graphique |
|
|
Étape 3 : placer les graduations sur le graphique |
|
|
Étape 4 : tracer l’histogramme |
|
|
Étape 5 : normaliser l’histogramme |
|
|
Étape 6 : graduer l’axe des ordonnées |
|
|
Étape 7 : analyser quelques textes |
|
Les étapes 5 et 6 permettent d’améliorer le rendu final du graphique, mais ne sont pas indispensables.
Étape 2 : tracer les axes du graphique (15 minutes)
Cette étape ne contient pas de difficulté majeure. Si les élèves ont déjà manipulé de stylo dans Scratch, et s’ils sont familiers avec les représentations graphiques (axes des abscisses et ordonnées), ils y arrivent sans problème. Dans le cas contraire, ne pas hésiter à les guider légèrement.
Notes pédagogiques
- On peut choisir de mettre des valeurs « en dur » dans le programme, comme les coordonnées du point d’origine, ou la longueur des axes, etc. Nous le déconseillons car, dans ce cas, le programme contient des données numériques qu’il devient difficile d’interpréter. Par ailleurs, si l’on souhaite changer une de ces valeurs, il faut penser à la changer partout où elle apparait, ce qui peut facilement être source d’erreur.
- Pour ces raisons, nous conseillons d’utiliser des variables ad hoc. Dans les exemples qui suivent, nous avons défini les variables suivantes :
- X0 et Y0 : coordonnées du point d’origine du graphique (idéalement, en bas à gauche de l’écran).
- Xmax et Ymax : abscisse et ordonnée maximales (auxquelles on stoppe le tracé des axes)
- Par ailleurs, afin de ne pas surcharger le programme en cours, nous conseillons de placer ce nouveau programme dans un nouveau lutin (qu’on peut nommer « initialise graphique » par exemple).
Étape 3 : placer les graduations sur le graphique (20 minutes)
Cette étape n’est pas compliquée en soi, mais elle nécessite de faire appel à une nouvelle instruction : estampiller (qui permet d’utiliser le lutin comme un tampon encreur : une trace définitive est laissée à l’écran, avec l’apparence du lutin au moment où l’instruction « estampiller » est utilisée.
Note pédagogique
Une façon simple de placer les graduations aurait été de parcourir l’axe des X et d’écrire (un peu en dessous de cet axe) les lettres A, B, C… jusqu’à Z. Malheureusement, Scratch ne permet pas d’écrire à l’écran : on peut soit dessiner à l’aide du stylo, soit afficher ou masquer des lutins (qui peuvent prendre différentes apparences : leur « costumes »). Programmer le dessin de chaque lettre à l’aide du stylo est très fastidieux et ne présente aucun intérêt… c’est pourquoi nous allons utiliser la seconde méthode.
Pour faire afficher une lettre à l’écran, le mieux est de créer un nouveau costume au lutin, costume qui aura l’apparence de cette lettre. On peut créer autant de costumes qu’on le souhaite, et donc on peut représenter toutes les lettres de l’alphabet. Ci-dessous, la méthode pour importer un costume prédéfini dans Scratch.
Importer les 26 costumes prend un peu de temps mais ne présente aucune difficulté. Une fois tous les costumes créés, il faut décider de leur emplacement. Si l’on veut espacer les lettres régulièrement, on peut calculer l’espacement entre les lettres et créer une variable (nommée « Pas_X » ci-après).
Il ne reste plus qu’à placer toutes les lettres. Pour cela, il faut déplacer le lutin, en lui faisant changer de costume et en l’estampillant à chaque étape.
Note pédagogique
- Ici, on s’est décalé horizontalement de « pas_X/2 » afin de centrer la position des lettres, et verticalement de « -20 » afin d’écrire en dessous de l’axe des abscisses.
- Il est aussi possible d’utiliser des « clones » du lutin, à la place de l’instruction « estampiller ». Les clones sont indispensables si l’on veut que les différentes instances du lutin puissent évoluer (se déplacer, interagir…). Ici, il s’agit simplement de fixer une image à l’écran : l’instruction « estampiller » suffit largement.
Le résultat final est un graphique qui ressemble à ceci :
Extrait de "1, 2, 3... codez !", Editions Le Pommier, 2016-2017. Publié sous licence CC by-nc-nd 3.0.