0% ont trouvé ce document utile (0 vote)
140 vues50 pages

Scratch

Ce document est un guide d'initiation au langage de programmation Scratch, destiné principalement aux élèves de l'école élémentaire. Il couvre les notions de base de la programmation et de l'algorithmique, ainsi que des exercices pratiques pour apprendre à utiliser Scratch. Le document inclut également des informations sur les outils de Scratch, les instructions, les lutins, et des exemples d'algorithmes en Scratch et d'autres langages.

Transféré par

Simo OD
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
140 vues50 pages

Scratch

Ce document est un guide d'initiation au langage de programmation Scratch, destiné principalement aux élèves de l'école élémentaire. Il couvre les notions de base de la programmation et de l'algorithmique, ainsi que des exercices pratiques pour apprendre à utiliser Scratch. Le document inclut également des informations sur les outils de Scratch, les instructions, les lutins, et des exemples d'algorithmes en Scratch et d'autres langages.

Transféré par

Simo OD
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

SCRATCH-ELEM

Initiation au langage de programmation SCRATCH


Gaston Balliot, Oct 2017, avec date de la mise à jour en bas de page
Pourquoi ELEM ?
parce qu’il s’agit ici de donner les éléments de base de Scratch et parce que les exercices choisis sont adaptés
à l’école élémentaire. Pour le collège l’initiation est bien sûr la même,
Un module avec des exemples adaptés au programme de ce niveau est ajouté sur le site web associé.

Table des matières


PROGRAMMATION – Notions préalables...........................................................................................................2
1- Démarche........................................................................................................................................................2
2- Notions de base d’algorithmique....................................................................................................................2
SCRATCH – Les Outils..........................................................................................................................................5
LA FENÊTRE SCRATCH 2..............................................................................................................................5
LA FENÊTRE SCRATCH 3..............................................................................................................................5
LA SCÈNE.........................................................................................................................................................6
LES LUTINS......................................................................................................................................................6
LES INSTRUCTIONS.......................................................................................................................................7
LES SCRIPTS....................................................................................................................................................7
LES LISTES.......................................................................................................................................................8
LES SONS..........................................................................................................................................................8
LES CHAÎNES DE CARACTÈRES..................................................................................................................9
SCRATCHELEM Exercices d’initiation à SCRATCH........................................................................................10
Module A : Se repérer dans la scène (le cadre) et se déplacer.........................................................................10
Module B : Piloter avec les touches du clavier ou la souris.............................................................................20
Module C : Utiliser des variables.....................................................................................................................22
Module D : Poser une question, écrire un message..........................................................................................25
Module E : Créer une animation avec plusieurs lutins.....................................................................................26
Module F : Utiliser le hasard............................................................................................................................28
Module G : Utiliser des blocs d’instructions....................................................................................................29
Module H : Sons et musique.............................................................................................................................32
Module I : Utiliser une liste..............................................................................................................................35
Module J : Autres Démos et quelques suggestions d’exercices.......................................................................35
Module K : Remarques, conseils, liens............................................................................................................41
Annexe 1 : Liste des instructions Scratch 2......................................................................................................44
Annexe 2 : Logique booléenne – Algèbre de Boole.........................................................................................45
Annexe 3 : sujets...............................................................................................................................................46
Annexe 4 : Musique avec Scratch, compléments.............................................................................................48
Annexe 5. : Scratch Jr.......................................................................................................................................50
Annexe 6 : Thymio le robot..............................................................................................................................50
Un site Internet (sur lequel vous pouvez envoyer vos contributions) accompagne ce document :
[Link]

25/02/19 [Link] 1
PROGRAMMATION – Notions préalables
1- Démarche

Cahier des charges => Algorithme => Codage en langage informatique

Cahier des charges : décrire avec précision ce que l’on veut.


Algorithme : décrire la méthode pour l’obtenir, la « recette ».
Langage informatique : choix suivant le but et le niveau de l’utilisateur
(par exemple Scratch en Élémentaire, Scratch et Algobox en Collège, Algobox et Python en Lycée, Javascript
pour une application Internet…etc..)

2- Notions de base d’algorithmique

Entrées / Sorties

Structures de contrôle :
 Séquence
 Alternative
 Itération (répétition)

Séquentialité : les instructions doivent être dans un ordre précis avec un début et une fin
Ajouter 2 puis multiplier par 3 est différent de multiplier par 3 puis ajouter 2

Alternative (conditionnelle)
Si [condition] alors [instructions] fin du si
Si [condition] alors [instructions] sinon [instructions]fin du si

Rem : la condition est un booléen pouvant avoir comme valeur Vrai ou Faux

Itération (répétition)
Soit on fixe le nombre de répétitions
Soit on répète jusqu’à trouver une condition d’arrêt

Pour i de 1 à n faire
[instructions]
fin du pour

Faire jusqu’à [condition]


[instructions]
Fin du faire

Opérateurs logiques, booléens :


Une expression logique ne peut avoir que deux valeurs : VRAI ou FAUX.
Les opérateurs logiques s’appliquant sur ces booléens sont : ET, OU, NON
(voir en annexe « logique booléenne, algèbre de Boole » )

25/02/19 [Link] 2
Exercices : concevoir et comprendre un algorithme

Deviner le résultat donné par chacun de ces algorithmes :

définir une variable x variable x variable x


x ← 1 (dans x mettre 1) x←1 x←1
Répéter 10 fois Répéter 10 fois Répéter 8 fois
x ← x+1 (ajouter 1 à x) x ← 2 * x (multiplier x par 2) si x pair alors x ← x+1
fin de la répétition afficher x sinon x ← x+3
afficher x fin de la répétition Afficher x

Écrire un algorithme sur papier pour résoudre un problème :

Exemple 1 : On dispose de 1530 €, on veut acheter le plus possible d’objets valant chacun 17, 90 €.
On ne sait pas effectuer la division.
Écrire un algorithme permettant de trouver le nombre maximum d’objets que l’on peut obtenir.
Comme l’ordinateur calcule très vite on lui fera faire les calculs successifs en augmentant le nombre d’objets de
1 en 1 à partir de 1 jusqu’à la somme disponible atteinte.
(on utilisera 3 variables nommées par exemple nb, pu, avoir – pour le nombre, le prix unitaire, l’avoir disponible)

(variante : on demandera au début la somme disponible et le prix unitaire, et on affichera à la fin le résultat)

Exemple 2 : Déplacement sur une grille :

On place sur la grille un point de départ D et un point d’arrivée A.


On admet qu’au début le personnage se trouve sur la case de départ
orienté vers la droite.
Avec les trois instructions :
- Avancer d’une case
- Tourner à droite
- Tourner à gauche
Écrire sur papier un algorithme pour aller de D en A.
(le nombre de pas devra être minimum, le nombre d’instructions
devra l’être également).

Idem en passant par une case intermédiaire I.

Idem en ajoutant quelques obstacles à éviter.

Avant de programmer sur l’ordinateur

Écrire à chaque fois sur papier (ordinateur inutile)


1 – ce que l’on veut obtenir (cahier des charges)
2 – comment faire pour y parvenir (algorithme)
Utiliser pour cela un langage simple (ne pas au début être esclave d’une écriture normalisée de
l’algorithme).
Simplicité, mais rigueur.
3 – vérifier, en simulant votre algorithme, « à la main », que tout se déroulera comme prévu...

25/02/19 [Link] 3
Cas du langage Scratch

Scratch est un langage orienté objet : les objets ont des propriétés et des méthodes (des savoir faire). On peut
manipuler plusieurs objets simultanément.

Gratuit. Visuel.
Pas d’erreur de syntaxe rebutante pour les débutants, car les instructions sont pré écrites, il suffit de les prendre
et les mettre en place comme des pièces de Lego.
Scratch est très utilisé comme premier langage d’enseignement.

Apprentissage facile sous forme de jeu. Essayer, voir l’effet, modifier, voir l’effet, etc…

Affichage des carrés des 20 premiers entiers non nuls

Algorithme Scratch Python


début
pour i de 1 à 20 faire for i in range (21) :
afficher (i*i) print ( i*i )
fin du pour
fin

Calcul de la somme des n premiers entiers

Algorithme Scratch Python

début
entrer (n); n=int(input(« n= »))
total ← 0 total=0
pour i de 1 à n faire for i in range (n+1) :
total ← total + i total = total + i
fin du pour print (total)
afficher (total)
fin

Tracé un trait : avancer, tourner

Algorithme Scratch Python


import turtle as tortue
abaisser le stylo
avancer de 150 [Link] (150)
tourner à gauche de 90° [Link] (90)
avancer de 100 [Link](100)

25/02/19 [Link] 4
SCRATCH – Les Outils

LA FENÊTRE SCRATCH 2

LA FENÊTRE SCRATCH 3

25/02/19 [Link] 5
Dans la version 3 la scène est passée à droite et la zone de programmation au centre

Pour télécharger Scratch (éditeur hors ligne = version offline = version desktop)
[Link]

LA SCÈNE
La scène (le décor, l’arrière-plan) est l'endroit où des histoires, des jeux et des animations prennent
vie. Les objets (lutins) se déplacent interagissent les uns avec les autres sur la scène.

La scène est un rectangle de 480 unités de large et 360 unités de hauteur.


L’unité correspond au pixel.
Elle est munie d'une grille de repérage avec un système de coordonnées (x,y).
Le centre de la scène a une abscisse x = 0 et une ordonnée y = 0.

Choisir une scène dans la bibliothèque de scènes ou la dessiner soit même (personnalisée)
Créer une scène personnalisée :
 à partir d’une photo ou image (réduire à 480x360 avec Paint ou autre)
 dessiner (avec l’éditeur graphique de Scratch ou avec Paint ou autre)
Enregistrer une scène qui nous convient : clic droit sur la scène, puis clic droit « enregistrer » « save picture of
stage ». On obtient une image de suffixe .png

LES LUTINS

Les lutins (ou objets, ou personnages, ou sprites en anglais) sont les objets animés (environ 60x180) se
déplaçant sur la scène suivant l’algorithme proposé.
Choisir un lutin dans la bibliothèque de lutins ou le dessiner soit même (personnalisé).
On peut aussi importer une image existante au format .png afin de gérer la transparence (ne pas avoir un
contour rectangulaire blanc comme en .jpg).
Enregistrer un lutin qui nous convient : clic droit sur le lutin, puis clic droit « enregistrer localement comme
fichier ». On obtient un fichier de suffixe .sprite2
Un même lutin peut avoir plusieurs aspects (costumes) et on peut modifier sa taille.
Exemple : le chat (lutin par défaut) a deux costumes, c’est à dire deux positions et en les alternant on peut
donner l’impression qu’il marche → instruction « costume suivant » dans la rubrique Apparence

25/02/19 [Link] 6
LES INSTRUCTIONS

Réparties dans plusieurs menus, les catégories étant différenciées par


des couleurs. (voir la liste complète en annexe)

Mouvement :
Avancer, s’orienter, tourner, aller à …

Apparence :
Montrer, cacher, écrire dans une bulle de dialogue, changer l’aspect du
lutin, …

Sons :
Émettre un bruit, une musique…

Stylo :
Taille et couleur du stylo, effacer…

Données :
Créer une variable, une liste…

Evénements :
Occasions de déclencher une action

Contrôle :
Les structures de contrôle : attendre, si alors, répéter…

Capteurs :
Capteurs d’événements (appui sur une touche, chronomètre, attendre une réponse, toucher un objet de couleur
donnée..). Récupération de la position du lutin (abscisse, ordonnée, direction).

Opérateurs :
Additionner, soustraire, multiplier, diviser, comparer, opérateurs logiques (et, ou, non), regrouper des éléments,
calcul aléatoire…

Ajouter blocs :
Pour créer des blocs d’instructions… Un bloc permet de regrouper des instructions que l’on utilisera dans le
script principal (notion de procédure).

LES SCRIPTS

Un script est une suite d'instructions - un programme -


Un script est associé à un lutin ou à la scène, chaque lutin a son script (sa méthode).
Un lutin peut envoyer un message à un autre afin de coordonner une action.
Pour passer d’un exercice à un autre en réinitialisant la scène et les lutins
utiliser le menu Fichier / Nouveau
Pour ouvrir un fichier Scratch déjà existant

25/02/19 [Link] 7
• avec Scratch 2 : utiliser Fichier / Ouvrir (et choisir un fichier de suffixe sb2)
• avec Scratch 3 : utiliser Fichier / Importer depuis votre ordinateur.
Pour conserver un programme Scratch
• avec Scratch 2 : utiliser Fichier / Enregistrer ou Enregistrer sous, on obtient un fichier ayant le
suffixe .sb2
• avec Scratch 3 : Fichier / Exporter sur votre ordinateur, on obtient un fichier ayant le suffixe .sb3
Scratch 3 sait lire les fichiers .sb2 (compatibilité ascendante)

LES LISTES
Vous pouvez créer et manipuler des listes dans Scratch. Les listes peuvent stocker des nombres
autant que des chaînes de lettres ou autres caractères.

Pour créer une liste, allez à la catégorie variables de blocs et cliquez sur . Une fois
que vous avez fait une liste, plusieurs blocs associés à la liste apparaissent. Les blocs de liste sont
décrits dans la section de description des blocs de ce guide.

Lorsque vous créez une liste, un tableau associé à cette liste apparaît sur la scène. Le tableau
présente la liste des éléments .Vous pouvez écrire directement un nombre ou une chaîne de
caractères sur une ligne du tableau de la liste.

Au début, la liste est vide, sa longueur est 0. Pour ajouter à la liste, cliquez sur le bouton + en bas à
gauche de l'écran de la liste. La longueur augmente de 1. Sinon, vous pouvez ajouter ( dans ce cas
chose ) à la liste en utilisant le bloc de liste (par exemple, ).

Vous pouvez redimensionner le tableau de la liste à partir du coin inférieur droit.

Pour vider une liste :

Note : Vous pouvez faire un clic droit (Mac: Ctrl + clic) sur le tableau de la liste pour exporter une
liste sous la forme d'un fichier texte .txt .
Vous pouvez aussi importer tout fichier .txt avec des valeurs sur des lignes distinctes.

Exemples : liste des voyelles, liste des élèves, etc..

LES SONS
Cliquez sur l'onglet Sons pour voir les sons proposés ou en créer de nouveaux.

25/02/19 [Link] 8
Une bibliothèque de sons est à votre disposition.
Vous pouvez aussi enregistrer de nouveaux sons ou importer des fichiers sonores. Scratch peut lire
des fichiers MP3 et des fichiers non WAV, AIF, AU non compressés et des fichiers (encodés en 8-
bits ou 16-bits par exemple, mais pas 24-bits par exemple).

LES CHAÎNES DE CARACTÈRES


Les chaînes sont des lettres, des mots, ou d'autres caractères (par exemple : la pomme, Octobre 2017, Vous avez
gagné!).

Les chaînes de caractères peuvent être stockées dans les variables ou les listes. Ex :

ou ).

Vous pouvez joindre ensemble (concaténer) des chaînes de caractères en utilisant . Vous

pouvez comparer les chaînes en utilisant les blocs suivants: , , ou .

Les chaînes sont évaluées comme 0 dans les blocs d'opération mathématique (tel que: ) et les blocs qui

attendent à un nombre (comme les et ).

25/02/19 [Link] 9
SCRATCHELEM Exercices d’initiation à SCRATCH

Module A : Se repérer dans la scène (le cadre) et se déplacer

La scène est un rectangle de 480 pas en largeur et 360 pas en hauteur.


L’origine est au centre (point 0,0)
La position horizontale de l’objet, nommée X va de -240 à +240
La position verticale de l’objet, nommée Y va de -180 à +180
L’unité d’angle est le degré.
(pour un repérage plus facile il existe Scratch Junior pour les petits…)

Démo A1 :

On voit le chat se déplacer.

Pour arrêter cliquer sur le bouton rouge.

Démo A2 :

On suit ainsi le déplacement, tracé par le stylo.

25/02/19 [Link] 10
Démo A3 :

« cacher » permet de ne plus voir le chat, seulement le tracé.

Mais ne pas oublier de cliquer sur le bouton rouge pour stopper.


Dans l’avenir il faudra éviter d’utiliser répéter indéfiniment !

Pour passer d’un exercice à un autre en réinitialisant la scène


utiliser le menu Fichier / Nouveau
Pour conserver un programme Scratch utiliser Fichier / Enregistrer ou
Enregistrer sous,
on obtient un fichier ayant le suffixe .sb2

Démo A4 : Se repérer dans la grille.

l’arrière plan choisi ici est xy-grid


Pour que le point d’écriture corresponde à la mine du crayon il est nécessaire de le
préciser sinon ce sera le centre du crayon par défaut. Pour cela sélectionner le lutin
et dans l’onglet costume cliquer sur la petite croix en haut à droite (définir le centre
du costume) et placer le point d’appui sur la pointe du crayon.

Modifier le programme pour faire tracer au lutin les lettres suivantes : N, Z , V , X, Y.

Démo A5 :

On en déduit qu’au départ le lutin est au centre et qu’il est orienté vers
la droite.
Bien voir le rôle de chaque instruction.

Remarque : pour ne pas voir le lutin (chat par défaut) clic droit
sur le lutin en bas à gauche et choix cacher. Cela permet de
mieux voir ce qui est dessiné.

25/02/19 [Link] 11
Exercice A1 : Dessiner un carré en ajoutant quelques instructions.

Exercice A2 :

Observer ce que fait ce programme (ce script) ci-


dessus
et comprendre le résultat.

Exercice A3 :

Dessiner un carré en utilisant la boucle répéter.

Exercice A4 :

Faire des essais en modifiant le nombre de répétitions et la valeur de l’angle.

Exercice A5 : Longueur du trajet

Comprendre un programme :
Cet exercice fait appel à la notion de variable (voir le module C).
Ici "distance" est une variable que l'on va faire varier au cours du
programme.

Demander aux élèves quelle est la longueur du tracé,


c’est à dire la distance parcourue par le stylo en position d’écriture.

Il est préférable de cacher le lutin afin de ne voir que le tracé.

Exercice A6 :

25/02/19 [Link] 12
Réaliser un tracé de ce type (escalier)
en utilisant la boucle répéter

Exercice A7 :
Réaliser ce dessin

Exercice A8 :

Écrire un programme qui dessine un triangle équilatéral avec un stylo rouge d’épaisseur double (taille 2).

Exercice A9 :

Dessiner cette croix (limiter le nombre d’instructions en utilisant « Répéter »

Exercice A10 :

1- Dessiner un polygone régulier.


Pour savoir de quel angle tourner à chaque fois il suffit de penser qu’une fois le polygone terminé on aura fait
un tour complet, donc 360°. Après chaque côté on tourne donc d’un angle égal à 360° divisé par le nombre de
côtés. Pour un carré 360/4=90, pour un pentagone 360/5=72, etc.

2 – Dessiner une étoile, polygone régulier non convexe.

3 – Reprendre la 1ere question en faisant varier légèrement l’angle (on n’obtient plus un tracé fermé
mais intéressant...)

25/02/19 [Link] 13
Exercice A11 :

Construire ces polygones réguliers ayant la même base de longueur 140.

Quel est le périmètre de chacun ?

25/02/19 [Link] 14
Une séquence d'orientation dans la scène, niveau cours moyen ou classe de 6ème
Objectifs: se déplacer, tourner, repérer sa position et son orientation
Notion préliminaires à expliquer :
1 - La scène est un rectangle de dimension 480 pas en largeur et 360 pas en hauteur.
Pour rester dans le cadre, si on est au centre on peut donc se déplacer au maximum de 240 vers la gauche ou
vers la droite, et de 180 vers le haut ou vers le bas.
2 - Pour tourner d'un certain angle on aura seulement besoin de connaitre 90°, 60° et 120°, qui seront utiles
pour la construction d'un carré et d'un triangle régulier.
Pour obtenir le dessin ci-dessous voici le code utilisé : (on aura caché le chat pour ne voir que le tracé)

A : Construction d'un carré de côté 100

25/02/19 [Link] 15
B : Construction d'un triangle régulier de côté 100

Tout cela est tracé très vite et on n'a pas le temps de suivre les étapes. On va ajouter une pause d'une seconde
dans la boucle de répétition, et pour bien voir l'orientation du crayon à chaque étape on va prendre comme lutin
une flèche.

et on réduit la taille de la flèche de façon à ce qu'elle ne soit pas trop encombrante.


Le bouton réduire est le 4ème.

Après le tracé des 2 premiers cotés du triangle voici ce que l'on voit :

25/02/19 [Link] 16
Il est possible qu'au bout de plusieurs manipulations le point de départ ne soit plus le centre de la scène et
l'orientation initiale ne soit plus vers la droite. On peut imposer ces deux contraintes. D'où une autre version
pour le triangle :

C : Construction d'une maison composée du carré surmonté du triangle

On va bien sûr tracer le carré et le triangle successivement. Cela parait simple mais il
y a une difficulté majeure, c'est de savoir comment on est positionné après le
premier tracé pour entamer le deuxième. Laissons faire quelques tentatives pour
mettre en évidence le problème.... Bravo à l'élève qui s'en sort tout seul.
Tracé du carré puis du triangle :
Quand on a tracé le carré on est revenu au point de départ, c'est à dire à l'angle bas
[Link] orienté vers la droite. Pour aller tracer le triangle il faut donc aller se
positionner ailleurs. Plusieurs solutions, beau sujet de recherche et d'essais.
Un élève de CM1 a suggéré : "pour le carré il suffit de répéter 7 fois au lieu de 4 et
on sera bien placé". Pas mal comme idée... Il y en a d'autres.

25/02/19 [Link] 17
Quelques réalisations :

Tracé du triangle puis du carré

25/02/19 [Link] 18
Apprendre les coordonnées x, y avec 3 petites vidéos (Université de Lille)

Tutoriel 1 : [Link]

Tutoriel 2 : [Link]

Tutoriel 3 : [Link]

25/02/19 [Link] 19
Module B : Piloter avec les touches du clavier ou la souris

Démo B1 :

Chaque événement « appui sur la touche a » ou « appui sur la touche espace » permet de piloter le lutin.

Exercice B1 :

Piloter le lutin en utilisant les 4 flèches du clavier gauche, droite, haut, bas, sans utiliser la commande tourner
mais avec s’orienter et avancer.

Démo B2 :

Le lutin suit le pointeur de la souris

25/02/19 [Link] 20
Démo B3 :

On choisit un lutin (ici le poisson étoile starfish), on lui définit un deuxième costume (2e aspect, ici simple
changement de couleur). On réduit leurs tailles.

Le script suivant permet de démarrer avec la touche « d », de changer d’aspect (de costume)
avec la touche « espace », de stopper avec la touche « s », et d’effacer avec la touche « e ». La
commande « estampiller » permet d’effectuer une copie du lutin sur la scène.

Voici par exemple un écran obtenu :

25/02/19 [Link] 21
Module C : Utiliser des variables

Démo C1 :

On a créé une variable nommée « angle ». On lui donne une valeur initiale
10°, puis après chaque avance de 40 pas on augmente l’angle de 1°.

Pour obtenir l’instruction


il faut aller chercher l’instruction dans la rubrique mouvement puis à partir de la
rubrique données faire glisser la variable à la place du 15.

Exercice C1 :
On a défini deux variables a et b.
Écrire sur chaque ligne, en face de l’instruction, les valeurs obtenues pour a et b
instruction a b

Mêmes questions
instruction a b

25/02/19 [Link] 22
On a ce script :
Écrire les valeurs de a et de b
- avant d’entrer dans la boucle répéter
- après le premier passage dans la boucle répéter
- après le deuxième passage dans la boucle répéter
- à la fin du programme

Exercice C2

On a défini 3 variables : i, resultat1, résultat2.


Que fait ce programme ? Quel affichage aurons-nous ?

Quelle serait la différence si l’instruction « ajouter à i la valeur 1 » était placée entre les deux instructions qui
précèdent ?
Voir QueFaitCeProgramme.sb2

25/02/19 [Link] 23
Exercice C3 : Longueur du trajet

Comprendre un programme :

Ici "distance" est une variable que l'on va faire varier au cours du
programme.

Demander aux élèves quelle est la longueur du tracé,


c’est à dire la distance parcourue par le stylo en position d’écriture.

Il est préférable de cacher le lutin afin de ne voir que le tracé.

Exercice C4 :

Reprendre l’exercice A10 (tracé d’un polygone régulier).

1 - Variante : on demande le nombre de côtés, placé dans une variable. Puis on trace le polygone.

2 – En prenant un grand nombre de côtés on a une approche du cercle.

Voir Polygones_réguliers.sb2

25/02/19 [Link] 24
Module D : Poser une question, écrire un message

Démo D1:

On a d’abord créé une variable nommée « prénom »

Bien comprendre l’utilité du mot « attendre »

Exercice D1 :

Demander le prix unitaire d’un objet, le nombre d’objets achetés, puis afficher le prix à payer

25/02/19 [Link] 25
Module E : Créer une animation avec plusieurs lutins

Chaque lutin a son propre script.

Démo E1 :

Choisir une scène (arrière-plan) dans la bibliothèque de scènes, ici un fond marin.
Choisir deux lutins, ici deux poissons, dans la bibliothèque de lutins, éventuellement en utilisant aussi la
bibliothèque costumes. Réduire la taille d’un des poissons. On aura donc un gros poisson qui cherchera à
manger le petit poisson.

Script pour le petit poisson

Script pour le gros poisson

Inventer d’autres méthodes pour sauver le petit poisson..

En résumé : chaque lutin a son propre script


Pour écrire le script que doit suivre un lutin cliquer sur ce lutin et composer son programme.
Si deux scripts ont une partie commune, copier le script de l'un vers l'autre puis effectuer la rectification pour le
second. Pour copier le script d'un lutin vers un autre lutin faire glisser le script du premier vers le second lutin.

25/02/19 [Link] 26
Dans l'exemple ci-dessus le drapeau vert déclenche l'action pour les deux lutins simultanément.
Il est possible de synchroniser les actions des lutins en utilisant les échanges de messages (programmation
événementielle)
Le lutin qui veut déclencher une action chez les autres utilise l'instruction

et les autres exécutent alors ce qui est dans leur programme sous l'instruction

(remplacer le texte message1 par ce que l'on veut)

Exemple donné par MathEnCapsules avec 3 personnages :


[Link]

25/02/19 [Link] 27
Module F : Utiliser le hasard

Un nombre choisi au hasard est appelé nombre aléatoire.

Dans la rubrique opérateurs on trouve qui nous fournit un nombre entier


choisi au hasard entre 1 et 6 (par exemple pour jouer aux dés).

Démo F1

Une variable est nommée pièce. On simule un jeu de Pile ou Face en prenant aléatoirement le nombre 1 ou le
nombre 2. Dans un cas on tourne à droite, dans l’autre on tourne à gauche. Afin de ne pas sortir du cadre le lutin
rebondit dès qu’il touche le bord, comme au billard !

Exercice F1 :

Créer une variable dé qui prendra une valeur aléatoire de 1 à 6.


Simuler 1000 lancés du dé et faire afficher combien de fois le dé donne un résultat supérieur à 3.

25/02/19 [Link] 28
Module G : Utiliser des blocs d’instructions

Si on compte utiliser plusieurs fois un bloc d’instructions, plutôt que


d’alourdir le script on définit cet ensemble avec « ajouter bloc »

Il suffira alors dans un script d’écrire le nom du bloc, ici pour


déclencher son exécution. (c’est un « sous-programme », une « procédure »).

Il peut être intéressant pour l’enseignant de fournir aux élèves un bloc « tout fait », en leur demandant de
l’utiliser dans un programme sans avoir à le maîtriser complètement.
A noter que l’on peut définir des blocs avec paramètre (au moment de la création du bloc cliquer sur le choix
« options » → notion de procédure avec paramètre.

Démo G1 : Carré rotatif

et on obtient ce joli dessin :

25/02/19 [Link] 29
Démo G2 : Quant à ce script, voici ce qu’il donne :

L’enseignant pourrait éventuellement fournir un bloc à l’élève qui l’utiliserait à sa guise…

Démo G3 : Carrés emboîtés

télécharger le script CarresEmboites.sb2 pour le modifier

25/02/19 [Link] 30
Démo G4 : Dessin géométrique (voir le script dessin_geometrique.sb2)

Imaginer des constructions géométriques, écrire sur papier le principe de réalisation,


puis avec Scratch tests et essais successifs...

Par exemple :
A partir d’un bloc carré et d’un bloc triangle créer le bloc maison.
Puis, à partir du bloc maison, créer ce dessin

25/02/19 [Link] 31
Module H : Sons et musique

De très nombreux sons existent dans la bibliothèque de sons (classés par catégories),
y compris les notes de musique.

Exemples d’instructions :
quand on choisit le n° de la note
le clavier est visible pour aider

Un son peut être choisi dans la bibliothèque, ou enregistré, ou importé à


partir d’un fichier, ou composé à partir des notes..

Pour la correspondance entre les notes et les nombres, ainsi que pour la numérotation des instruments, voir
l’annexe dédiée en fin de document.

( ex : la note 440 Hz est le n° 69 – La3 ou A2 - Toute différence de 1 numéro


correspond à ½ ton, Do=60, tous les multiples de 12 sont des Do)

25/02/19 [Link] 32
Exemple de Frère Jacques, trouvé sur un site du MIT
(MIT : Massachusetts Institute of Technology )

25/02/19 [Link] 33
Ou avec un lutin qui dit les paroles (Choisir un arrière plan et un personnage)

25/02/19 [Link] 34
Module I : Utiliser une liste

Une liste sert à stocker un ensemble d’éléments : par exemple la liste des élèves.
Dès que l’on a créé une liste (rubrique Données) on dispose d’un ensemble d’instructions pour ajouter,
supprimer, insérer, déplacer, choisir un élément, pour compter le nombre d’éléments, pour voir la liste.

On peut entrer les données de la liste manuellement


ou les importer à partir d’un fichier existant, de
même les conserver en exportant dans un fichier.
(fichier texte, suffixe .txt ou .csv)

Un très bon tutoriel en vidéo de 5 minutes :


[Link]

Module J : Autres Démos et quelques suggestions d’exercices

Exercice J1 :

Calcul Mental : Le personnage choisi comme lutin prend deux nombres entiers aléatoires entre 0 et [Link]
sont affichés à l’écran. Il demande « quelle est la somme ? ». L’élève a un délai de réflexion pour répondre.
Pour une bonne réponse on a « bravo » et des applaudissements, pour une mauvaise on émet un son et on
redemande. (dans une première étape le programme devra vérifier avant de poser la question que la somme ne dépassera pas 100)

Exercice J2 :
Calcul Mental : Le personnage choisit deux nombres entiers aléatoires entre 0 et 100 et pose la question de la
différence entre les deux (il aura placé le plus grand en premier).

Exercice J3 :
Calcul mental : On propose un nombre entier aléatoire entre 0 et 500. On demande quel est son double.

Exercice J4 :
Calcul mental : On propose un nombre entier aléatoire entre 0 et 100 et on demande de calculer sa moitié (le
programme devra choisir un nombre entier pair).

Exercice J5 :
Calcul mental : Additionner des heures et des minutes (le programme devra proposer la variable heure entre 0
et 12 et la variable minute entre 0 et 59)

Exercice J6 :
Trop grand / trop petit : le lutin choisit un nombre au hasard entre 0 et 50. Le joueur propose une réponse. Le
lutin lui dit « trop grand » ou « trop petit » ou « trouvé » et indique en combien de fois la réponse a été trouvée.
Réfléchir à une stratégie (dichotomie).
Démos du dossier joint

Démo J1 Je suis un devin  fichier devin.sb2

25/02/19 [Link] 35
L’élève pense à un nombre. Le devin lui demande quelques calculs et trouve ce nombre.

Démo J2 : Précipice  fichier précipice.sb2

On dessine une falaise. Le chat avance et tombe dans le précipice.


<-- Dessiner le terrain.
Placer le lutin sur le sol à gauche
Il avance en bougeant les jambes (changement d’aspect, de costume).
Il tombe de la falaise en disparaissant (diminution de sa taille).

Une difficulté est de tenir compte de la position du lutin après le dessin du sol.
Il serait bien préférable de ne pas créer ce bloc et de créer plutôt une scène dédiée avec le terrain et la falaise.

Démo J3 :

Parcours fléché (se repérer dans le plan)

Conduire le lutin de la case départ à la maison en évitant les


obstacles. Le déplacement se fait avec les flèches du clavier.
Cet exercice est proposé par Jean-Luc Duhin sous le nom "une
grille pour apprendre à coder" sur le site de La main à la pâte
lien : [Link]/fr/topic/63593

On trouve le script ParcoursFlecheAniveau.sb2 avec les exemples (page Téléchargements)

25/02/19 [Link] 36
Démo J4 :

Pour montrer les quatre points cardinaux et simuler un compas de navire qui indique le cap (gradué de 0 à 360),
une petite animation.

La flèche tourne de 10° en 10° à partir du cap 0 en indiquant à chaque fois le


cap.

Questions éventuelles :
quel cap prendre pour aller vers
• E
• S
• O
• SE
• NO
• SO
• N

Ouvrir le script CompasNavire.sb2 dans le dossier des exercices.

Démo J5 : Additionner des heures et minutes

Programme peut-être trop difficile à programmer pour des élèves, mais peut être utilisé lors d’une séance
d’exercices sur le sujet.
Le lutin choisit aléatoirement deux durées en h et min et demande le résultat de leur addition. (donner la
réponse sous forme 14h53)

Ouvrir le script Additionsheuresminutes.sb2 dans le dossier des exercices

25/02/19 [Link] 37
Démo J6 : Balade hivernale  voir le dossier de ce nom

Le pingouin s’avance vers la droite, l’ours apparaît. Lorsque le pinguoin le voit il recule précipitament et bute
dans l’arbre qui se trouve derrière lui.
Avec un pingouin et un ours j’ai introduit les
notions
- Se cacher, se montrer
- Changer d’apparence (de costume)
- Réagir à proximité d’un autre lutin
- Réagir lorsqu’on touche un objet d’une
certaine couleur

Démo J7 : lancé de deux dés, avec dessin des dés.


Où l'on apprend à dessiner facilement les 6 faces d'un dé,
considérées comme 6 costumes d'un même dé, et à associer
chacun au résultat obtenu aléatoirement à chaque lancer.

Voir la petite vidéo de Rubi Umberto


[Link]

ensuite on peut compléter le projet en simulant un grand nombre


de fois le lancer des 2 dés et en étudiant les fréquences des
différentes sommes obtenues.

25/02/19 [Link] 38
Démo J8 : Cadavre exquis
Ce jeu littéraire est bien connu (Marcel Duhamel, Jacques Prévert, Yves Tanguy). Le principe du jeu est le
suivant : chaque participant écrit à tour de rôle une partie d'une phrase, dans l'ordre sujet–verbe–complément,
sans savoir ce que le précédent a écrit. La première phrase qui résulta et qui donna le nom à ce jeu fut « Le
cadavre – exquis – boira – le vin – nouveau »
Ici on utilisera les notions de liste, de concaténation de chaînes de caractères, de choix aléatoire.
Voici un exemple adaptable, avec 4 listes modifiables directement dans Scratch.
Ouvrir le script cadavre_exquis.sb2 dans le dossier des exercices

25/02/19 [Link] 39
Démo J9 : un peu d’art
(exemple trouvé sur le site de Scratch en ligne, élaboré par Daffo)
voir le script OctogoneEstampille.sb2

On prend comme objet lutin un octogone régulier plein (le bouton « stop »).
On le fait tourner en « estampillant », c’est à dire en peignant ses différentes positions successives dans la scène à fond noir.
Sa taille, au départ très grande, diminue progressivement, et sa couleur varie. Suivant l’angle de rotation choisi on obtient des images
très variées.

Démo J10 : Créer mon premier jeu avec Scratch, vidéo de démonstration par Law974

Beaucoup d’éléments intéressants dans ce petit tutoriel : associer un script à la scène pour la faire défiler et
ainsi créer le mouvement, envoyer des messages aux différents lutins pour coordonner les actions, copier le
script d’un lutin vers un autre lutin...

L’oiseau doit attraper la balle sans se faire prendre


par le dragon

Démo J11 : Créer un arrière-plan « labyrinthe » (proposé par l’apmep)

[Link]

25/02/19 [Link] 40
Module K : Remarques, conseils, liens

Pour télécharger Scratch2 (version hors ligne)


[Link]

Organiser ses données

Sur son ordinateur, dans son dossier Scratch prévoir des sous-dossiers dans lesquels on stockera ses propres
scripts, ses lutins personnalisés, ses scènes personnelles, avec des identifiants significatifs.

Choisir la couleur du stylo

Ce bloc vous permet de choisir la couleur de votre choix pour le stylo.

En cliquant sur le petit carré


une main apparaît, la déplacer pour choisir une couleur dans la fenêtre Scratch, par exemple sur le drapeau vert,
ou sur une couleur du lutin, ou sur une couleur que l’on aura créée avec la palette de dessin...
Ce bloc permet de changer de couleur (rouge :0, orange : 20, jaune :33, vert :66, bleu :133, violet :150).

Voir les scripts couleursScratch.sb2 et couleursjeu.sb2 dans le dossier des exercices..

Modifier la taille d’un lutin

- Soit cliquer sur les icônes agrandir/diminuer ci-contre, puis cliquer autant de fois que voulu sur le
lutin concerné

25/02/19 [Link] 41
- Soit dans le script associé au lutin insérer l’instruction

Modifier l’aspect du lutin

On a pour cela le menu Apparence avec ses différents effets

par exemple l’effet fantôme fait disparaître le lutin progressivement

change sa couleur.

Dessiner un lutin ou un arrière-plan (scène) personnalisés

On dispose dans Scratch d’un outil dessin sommaire


mais efficace.

Il est préférable de concevoir son dessin en utilisant


un zoom pour travailler plus finement. (200 % ??)

25/02/19 [Link] 42
Récursivité et fractales

Pour les curieux j’ai ajouté un petit module sur la récursivité avec quelques réalisations de fractales (voir sur le
site en page Téléchargement). Bien sûr cela ne correspond pas au niveau choisi pour cette initiation, mais c’est
pour le plaisir de certains profs les dimanches pluvieux. Quant aux grands élèves, on peut avoir des surprises.
Avoir ou ne pas avoir « l’esprit récursif »...

Quelques liens

Squeaki MST [Link]

et [Link]

1,2,3... codez ! Le site de la Fondation La main à la pâte

Benjamin Chatelin (Orléans Tours) [Link]


Numerique/Documents/tutoriel_Scratch.pdf

Travaux Académiques Mutualisés TraAM académie de Rennes

Marie-Laure Besson [Link]

La classe d’Émilie [Link]

Atelier cartes [Link]

MitEdu [Link]

Orléans Tuto [Link]


Documents/tutoriel_Scratch.pdf

Pilat Ressources Pour L’école [Link]

Salledesrancy [Link]

L’île au trésor (IREM Rennes) [Link]


UFR%20Mathematiques/Irem/Groupes/Jeux/L'%C3%AEle%20au%20tr
%C3%[Link]@view_documents;jsessionid=[Link]?tabIds=
%3A&conversationId=0NXMAIN1

*****************************

à signaler aussi :Algobox : un très bon logiciel


pour l’apprentissage de l’algorithmique en collège
[Link]

25/02/19 [Link] 43
Annexe 1 : Liste des instructions Scratch 2

25/02/19 [Link] 44
Annexe 2 : Logique booléenne – Algèbre de Boole

Scratch utilise les 3 opérateurs logiques ET, OU, NON


à partir de ces 3 opérateurs on peut fabriquer tous les autres XOR, NOR...
a, b étant des booléens (2 valeurs possibles Vrai, Faux souvent notées 1, 0)
a ET b est vrai si et seulement si a vrai et b vrai
a OU b est vrai si et seulement si a vrai ou b vrai
Tables de vérité :

pour ces opérateurs ET OU


on a
commutativité
associativité
distributivité de l’un par rapport à l’autre

Lois de Morgan : non (a et b) = (non a) ou (non b)


non (a ou b) = (non a) et (non b)

Exemples d’utilisation :

a<x<b signifie (x>a) et (x<b)


donc sa négation est (x≤a) ou (x≥b)

avec Scratch comparer :

Circuits électriques :
Soit 2 interrupteurs a et b (avec vrai si fermé)
- en série : lampe allumée = a et b, lampe éteinte = (non a) ou (non b)
- en parallèle : lampe allumée = a ou b, lampe éteinte = (non a) et (non b)

25/02/19 [Link] 45
Annexe 3 : sujets

--- pour information, un sujet Scratch proposé pour le Brevet des Collèges en 2016

Losanges

25/02/19 [Link] 46
Et le sujet Scratch du Brevet des Collèges en 2017

25/02/19 [Link] 47
Annexe 4 : Musique avec Scratch, compléments

Liens utiles :
Frère Jacques tutoriel [Link]
Tutoriels de JF. Cauche :
Choix instrument : [Link]
choisissez-vos-instruments/
Percussions [Link]
Volume sonore : [Link]

25/02/19 [Link] 48
Un exemple avec des touches de piano sur un octave. Cliquer sur les touches pour jouer.
Voir le script piano.sb2 chaque touche est un lutin – exemple de script d’une touche :

25/02/19 [Link] 49
Annexe 5. : Scratch Jr

Scratch Junior
[Link]
Des commandes simplifiées et visuelles.
Age idéal : 5/7 ans. Support : sur tablettes iPad et Android
Avec ScratchJr, les jeunes enfants (de 5 à 7 ans) peuvent programmer leurs propres histoires interactives et
leurs propres jeux. Par là même, ils apprennent à résoudre des problèmes, créer des projets et exprimer leur
créativité sur ordinateur.

Lien utile : [Link]

Annexe 6 : Thymio le robot

Thymio est un petit robot qui permet de découvrir l’univers de la robotique et


d’apprendre le langage des robots. Avec Thymio, la programmation et les bases de
la robotique deviennent des notions abordables à tout âge. Thymio est pilotable de
plusieurs façons, dont l’une avec Scratch.
[Link]/fr/[Link]

25/02/19 [Link] 50

Vous aimerez peut-être aussi