Académique Documents
Professionnel Documents
Culture Documents
Scratch
Scratch
Majed Marji
Le grand livre de
Le grand livre de
SCRATCH
Apprendre à programmer
en s’amusant !
Scratch est un environnement de programmation
simple, ludique et gratuit où il s’agit de relier des
Sur www.éditions-eyrolles.com/
go/grandlivrescratch
Téléchargez le code source des exemples et les solutions
des exercices.
SCRATCH
Une initiation visuelle à la programmation
25 €
ISBN : 978-2-212-11812-4
Code éditeur : G11812
Majed Marji
Le grand livre de
Le grand livre de
SCRATCH
Apprendre à programmer
en s’amusant !
Scratch est un environnement de programmation
simple, ludique et gratuit où il s’agit de relier des
Sur www.éditions-eyrolles.com/
go/grandlivrescratch
Téléchargez le code source des exemples et les solutions
des exercices.
SCRATCH
Une initiation visuelle à la programmation
SCRATCH
Le grand livre de
SCRATCH
Copyright © 2014 by Majed Marji. Title of English-language original: Learn to Program with
Scratch, ISBN 978-1-59327-543-3, published by No Starch Press.
Traduction autorisée de l’ouvrage en langue anglaise intitulé Learn to Pogram with Scratch de
Majed Marji (ISBN 978-1-59327-543-3), publié par No Starch Press.
Recommandations au lecteur
La beauté de la programmation est qu’elle rend capable de créer. Il suffit d’une
idée et de quelques heures sur un clavier d’ordinateur pour qu’un nouveau logi-
ciel prenne vie ! Comme n’importe quelle nouvelle compétence cependant, la
programmation requiert de l’entraînement. Au cours de votre apprentissage,
vous commettrez sans doute des erreurs, mais n’abandonnez surtout pas. Prenez
du temps pour réfléchir aux concepts et expérimentez différentes techniques
jusqu’à ce que vous les maîtrisiez, avant de passer à quelque chose de nouveau.
Concept de l’ouvrage
Ce livre va vous faire découvrir les grands principes de la programmation à
travers la résolution de problèmes pratiques. Avec cette approche, j’espère
cultiver l’imagination des lecteurs et rendre la programmation informa-
tique accessible à tous.
VIII Avant-propos
Structure du livre
Les trois premiers chapitres de ce livre introduisent Scratch, en le présentant
comme un puissant outil de dessin de formes géométriques et de création
d’applications multimédias. Ils vous aideront à démarrer rapidement et faci-
lement, tandis que le reste de l’ouvrage se focalise sur les outils de program-
mation que propose Scratch.
Le chapitre 1, Premiers pas, présente l’environnement de programma-
tion de Scratch, les blocs de commande disponibles et la procédure per-
mettant de créer des programmes simples.
Le chapitre 2, Mouvements et dessins, porte sur les commandes de
mouvement et les fonctions de dessin de Scratch.
Le chapitre 3, Apparences et sons, traite des commandes graphiques et
sonores.
Le chapitre 4, Procédures, explique comment écrire des programmes
structurés et modulaires grâce aux procédures.
Le chapitre 5, Variables, explore la façon dont les variables peuvent être
utilisées pour enregistrer des informations. Ce chapitre explique éga-
lement comment obtenir des réponses des utilisateurs après leur avoir
posé des questions, ce qui vous permettra de construire un large panel
de programmes interactifs.
Le chapitre 6, Prendre des décisions, décrit les différentes manières de
prendre des décisions et de contrôler le cheminement d’un programme.
Le chapitre 7, Répétitions. Une étude approfondie des boucles, traite
en détail des structures de répétitions disponibles dans Scratch et
explique comment les utiliser avec des exemples concrets.
Le chapitre 8, Traitement des chaînes de caractères, présente un
ensemble de programmes utiles pour manipuler le type de données
« chaîne de caractères ».
Avant-propos IX
Conventions utilisées
Nous utilisons des styles de texte particuliers pour faire référence aux
textes de l’interface de Scratch.
• Les noms des blocs de Scratch sont dans ce style : quand le drapeau
vert est cliqué.
• Les noms des lutins et des variables sont dans ce style : Balle.
Nomfichier.sb2 Les fichiers dont vous aurez besoin en lisant certaines sections sont indi-
qués dans la marge (voir l’exemple sur le côté) et les exercices « Faites le
test » sont présentés de la manière suivante :
FA IT E S LE T E S T
Ressources en ligne
Rendez-vous à l’adresse http://www.editions-eyrolles.com/go/grandlivrescratch
pour télécharger les ressources du livre, qui se composent des documents
suivants :
X Avant-propos
1
PREMIERS PAS 1
Qu’est-ce que Scratch ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Faites le test 1-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
L’environnement de programmation de Scratch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
La scène . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Faites le test 1-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
La liste des lutins. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Faites le test 1-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
L’onglet des blocs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Faites le test 1-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
La zone de scripts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
Faites le test 1-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
Faites le test 1-6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
L’onglet Costumes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Faites le test 1-7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
L’onglet Sons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Faites le test 1-8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
L’onglet Arrière-plans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Faites le test 1-9 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Les informations du lutin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
La barre d’outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
L’éditeur d’images . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Définir le centre d’une image. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Faites le test 1-10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Définir une couleur transparente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Votre premier jeu Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
Étape 1. Préparez l’arrière-plan. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Étape 2. Ajoutez la raquette et la balle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Étape 3. Démarrez le jeu et déplacez vos lutins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Faites le test 1-11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Étape 4. Mettez de l’ambiance avec du son . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
Les blocs de Scratch : un aperçu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
Opérateurs arithmétiques et fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Opérateurs arithmétiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Nombres aléatoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
Fonctions mathématiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
Problèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2
MOUVEMENTS ET DESSINS 25
Utilisation des commandes de mouvement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Mouvement absolu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Faites le test 2-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
3
APPARENCE ET SONS 47
La palette Apparence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Animer en changeant de costume . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48
Faites le test 3-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Des lutins qui pensent et qui parlent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Faites le test 3-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Effets graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50
Taille et visibilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Faites le test 3-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Plans . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
Faites le test 3-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
La palette Sons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Jouer un fichier audio. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Jouer des percussions et d’autres sons. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Composer de la musique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Contrôle du volume sonore . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55
Faites le test 3-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Régler le tempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Faites le test 3-6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Projets Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56
Danser sur scène . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Feu d’artifice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Problèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
5
LES VARIABLES 91
Les types de données dans Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Quelle forme choisir ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92
Conversion automatique de types de données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93
Introduction aux variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Qu’est-ce qu’une variable ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
Créer et utiliser des variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
Nommer les variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98
Faites le test 5-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
La portée des variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100
Le type de donnée d’une variable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101
Modifier les variables. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102
Faites le test 5-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104
Les variables dans les clones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
Les moniteurs de variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107
Utiliser les moniteurs de variables dans des applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108
Simulation de la loi d’Ohm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109
Faites le test 5-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Démonstration d’un circuit en série . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110
Faites le test 5-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Visualiser le volume et l’aire d’une sphère. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112
Faites le test 5-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Dessiner une rosace à n pétales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114
Faites le test 5-6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Modéliser la répartition des graines de tournesol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116
Faites le test 5-7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Obtenir des données entrées par les utilisateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
Lire un nombre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 118
6
PRENDRE DES DÉCISIONS 123
Les opérateurs de comparaison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124
Les booléens dans le monde réel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125
Évaluation des expressions booléennes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Comparer des lettres et des chaînes de caractères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126
Les structures de décision . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Le bloc si. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128
Utiliser les variables comme drapeaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
Le bloc si/sinon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130
Blocs si et si/sinon imbriqués. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Programmes pilotés par des menus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132
Les opérateurs logiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134
L’opérateur et . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
L’opérateur ou. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
L’opérateur non. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136
Utiliser les opérateurs logiques pour tester des intervalles. . . . . . . . . . . . . . . . . . . . . . . . 137
Comparer des nombres décimaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
Projets Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Devine mes coordonnées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
Faites le test 6-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Jeu de classification de triangles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142
Faites le test 6-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Suiveur de ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145
Faites le test 6-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Équation d’une droite. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 147
Faites le test 6-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Autres applications. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 151
Problèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152
7
RÉPÉTITIONS : UNE ÉTUDE APPROFONDIE DES BOUCLES 155
Plus de blocs de boucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156
Le bloc répéter jusqu’à . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
Faites le test 7-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Construire un bloc si infini . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158
Faites le test 7-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Les commandes d’arrêt (stop). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 160
Faites le test 7-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
Mettre fin à une boucle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Valider les entrées utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
Les compteurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Vérifier un mot de passe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164
Faites le test 7-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
Compter avec un incrément constant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
8
TRAITEMENT DES CHAÎNES DE CARACTÈRES 185
Retour sur les chaînes de caractères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
Compter les caractères d’un certain type dans une chaîne. . . . . . . . . . . . . . . . . . . . . . . 186
Comparer des chaînes de caractères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188
Faites le test 8-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
Exemples de manipulation de chaînes de caractères . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189
Angagelille ecretsille . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190
Faites le test 8-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Corrige mon orthographe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191
Faites le test 8-3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Réordonne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 193
Projets Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Tir . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 196
Faites le test 8-4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Convertisseur binaire-décimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199
Faites le test 8-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
Faites le test 8-6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Le jeu du Pendu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
Faites le test 8-7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Professeur de fractions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 207
Faites le test 8-8 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 212
Problèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213
9
LES LISTES 215
Les listes dans Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Créer des listes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 216
Faites le test 9-1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Les commandes de listes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218
Faites le test 9-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
Vérification des limites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221
Les listes dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
Remplir des listes avec des entrées utilisateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 222
ANNEXE
PARTAGE ET COLLABORATION 247
Créer un compte Scratch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
Utilisation du sac à dos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 250
Partage de vos propres projets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Démarrer un nouveau projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
Remixer un projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
La page de projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253
Partager votre projet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254
INDEX 255
À PROPOS DE L’AUTEUR ET DU VALIDATEUR TECHNIQUE 261
Le chat que vous voyez sur la figure 1-1 est ce que l’on appelle un lutin. Les
lutins comprennent et exécutent les suites d’instructions que vous leur donnez.
Le bloc violet sur la gauche indique au chat d’afficher « Hello! » dans une bulle
de bande dessinée. Une grande partie des applications que vous créerez dans
ce livre contiendront plusieurs lutins et vous utiliserez des blocs pour les faire
bouger, tourner, dire des choses, jouer de la musique, faire des maths, etc.
Vous programmez dans Scratch en assemblant ces blocs de couleur,
comme vous le feriez avec des briques de Lego. Les piles de blocs que vous
créez s’appellent des scripts. Par exemple, la figure 1-2 montre un script qui
change quatre fois la couleur d’un lutin.
Première Deuxième Troisième Quatrième
fois fois fois fois
Figure 1-2 : Utilisation d’un script qui change la couleur du lutin Chat
2 Chapitre 1
FA IT E S LE T E S T 1-1
Bien que nous n’ayons pas encore parlé des blocs de la figure 1-2, lisez-les, obser-
vez leurs formes et essayez de deviner par quelles étapes le script est passé pour
faire changer le chat de couleur (indice : le premier bloc violet renvoie le chat
à sa couleur originale). À votre avis, que se passerait-il si nous retirions le bloc
attendre du script ?
Ce livre parcourt Scratch 2, qui est sorti en mai 2013. Cette version vous
permet de créer des projets directement dans votre navigateur Internet et
vous évite d’installer un programme sur votre ordinateur. Le contenu de ce
livre s’appuiera sur l’interface Internet de Scratch.
Maintenant que vous en savez un peu plus sur ce langage, il est temps de
commencer notre étude de la programmation et d’apprendre à nous servir
de Scratch.
Onglets
Barre Outils
Fenêtre d’aide
des menus de curseur
Palette des blocs
Zone de scripts
Scène
Premiers pas 3
La scène
La scène est l’endroit où vos lutins se déplacent, dessinent et interagissent.
Elle a une largeur de 480 pas et une hauteur de 360 pas (figure 1-4). Le
centre de la scène a une coordonnée x de 0 et une coordonnée y de 0.
y Mode présentation
180 Nom du projet Drapeau vert
B A
Stop
x Curseur de la souris
–240 (0,0) 240
Zone d’affichage
(x,y)
C D de la souris
–180
x: 150 y: 100
Figure 1-4 : La scène est semblable à une grille de coordonnées avec le point (0,0) au centre.
FA IT E S LE T E S T 1-2
4 Chapitre 1
Les boutons situés au dessus de la liste des lutins vous permettent d’ajou-
ter de nouveaux lutins à votre projet à partir de l’un des quatre emplace-
ments suivants : la bibliothèque de lutins de Scratch u, l’éditeur d’images
intégré v (où vous pouvez dessiner votre propre costume), une caméra inté-
grée à votre ordinateur w ou un fichier sur votre ordinateur x.
FA IT E S LE T E S T 1-3
Chaque lutin de votre projet possède ses propres scripts, costumes et sons.
Sélectionnez n’importe lequel pour voir ce qu’il contient. Vous pouvez soit
(1) cliquer sur la miniature du lutin dans la liste, soit (2) double-cliquer sur
le lutin lui-même dans la scène. La miniature de celui qui est sélectionné est
toujours en surbrillance et entourée en bleu. Vous pouvez alors accéder à ses
scripts, costumes et sons en cliquant sur l’un des trois onglets situés dans la
zone de scripts. Nous observerons le contenu de ces onglets plus tard. Pour
l’instant, effectuez un clic droit (ou Ctrl + clic si vous utilisez un Mac) sur la
miniature du lutin Chat pour voir le menu contextuel présenté sur la figure 1-6.
L’option dupliquer u copie le lutin en donnant un nom différent à la
copie. Vous pouvez retirer un lutin de votre projet avec l’option supprimer v
ou l’exporter au format .sprite2 sur votre ordinateur en utilisant l’option enre-
gistrer localement comme fichier w. Pour importer et exporter vers un autre
projet, cliquez sur le bouton importer le lutin depuis un fichier présenté à la
figure 1-5. L’option cacher x rend le lutin visible ou invisible sur la scène.
Premiers pas 5
La liste des lutins montre également une miniature pour la scène sur la
gauche (figure 1-6). La scène a ses propres suites d’instructions, images et sons.
Le fond d’écran que vous voyez sur la scène est appelé arrière-plan. Par défaut,
lorsque vous démarrez un nouveau projet, l’arrière-plan est constitué d’un fond
blanc, mais vous pouvez ajouter de nouvelles images grâce à l’un des quatre
boutons se trouvant sous la miniature de la scène. Cliquez sur la miniature de
la scène pour voir et éditer les scripts, arrière-plans et sons qui lui sont associés.
Essayez de cliquer sur un bloc pour voir ce qu’il fait. Si vous cliquez sur
avancer de 10 dans la palette Mouvement, par exemple, le lutin va avancer
de 10 pas sur la scène. Cliquez à nouveau et le lutin avancera encore de
6 Chapitre 1
FA IT E S LE T E S T 1- 4
Dirigez-vous vers la palette Apparence, changez les valeurs des entrées de blocs,
puis cliquez sur ces derniers pour voir ce qu’ils font. Réalisez par exemple l’ex-
périence avec le bloc mettre l’effet couleur à. Essayez des nombres tels que
10, 20, 30, et ainsi de suite jusqu’à ce que le chat retrouve sa couleur originale.
Testez les options du menu déroulant avec différents nombres. Vous pouvez cliquer
sur le bloc annuler les effets graphiques (également présent dans la palette
Apparence) pour supprimer vos modifications.
La zone de scripts
Pour faire accomplir des choses intéressantes à votre lutin, vous devez pro-
grammer ses actions en faisant glisser les blocs de leur onglet vers la zone
de script et en les y assemblant. Lorsque vous les faites glisser dans la zone
de scripts, une zone de surbrillance blanche indique un endroit où vous
pouvez les déposer pour créer une connexion valide (figure 1-9). Les blocs
de Scratch ne s’assemblent que de certaines manières, éliminant les erreurs
classiques produites par les personnes qui utilisent des langages de program-
mation à base de texte.
Premiers pas 7
Figure 1-9 : Faites glisser les blocs dans la zone de scripts et assemblez- les pour définir
les actions de vos lutins.
Vous n’avez pas besoin de compléter les scripts pour les exécuter, ce qui
signifie que vous pouvez les tester pendant leur construction. Cliquer n’importe
où sur un script, partiel ou complet, l’exécute entièrement, de haut en bas.
FA IT E S LE T E S T 1-5
Commencez un nouveau projet Scratch et créez le script présenté ci- après pour le
lutin Chat (le bloc répéter indéfiniment se trouve dans la palette Contrôle et les
autres dans la palette Mouvement).
Vous étudierez la plupart de ces blocs dans le chapitre 2. Pour l’instant, cliquez
sur votre nouveau script pour l’exécuter. Scratch devrait mettre en évidence les
scripts en cours d’exécution grâce à des contours jaunes, comme sur le côté droit
de l’image. Vous pouvez même changer l’entrée d’un bloc et ajouter des blocs à un
script en cours d’exécution ! Par exemple, changez le nombre dans le bloc avan-
cer de et regardez comment en sont affectés les mouvements du chat. Cliquez une
fois de plus sur le script pour l’arrêter.
8 Chapitre 1
FA IT E S LE T E S T 1-6
Ajoutez un nouveau lutin à votre projet. Faites glisser le script de Chat vers la
miniature du nouveau lutin. La flèche de votre souris doit se trouver sur la nouvelle
miniature pour que l’opération fonctionne. Vérifiez la zone de scripts du nouveau
lutin pour vous assurer qu’il contienne bien une copie identique au script original.
L’onglet Costumes
Vous modifiez l’apparence d’un lutin en changeant son costume, qui n’est en
fait qu’une image. L’onglet Costumes contient tout ce dont vous avez besoin
pour organiser les apparences de votre lutin ; voyez-le comme un placard à
vêtements ; il peut contenir beaucoup de vêtements, mais un lutin n’en porte
qu’un seul à la fois.
Essayons de changer le costume de Chat. Cliquez sur la miniature du
lutin et sélectionnez l’onglet Costumes. Deux apparences sont disponibles
(figure 1-10) : costume1 (en surbrillance, c’est le costume actuel) et costume2.
Figure 1-10 : Vous organisez les apparences d’un lutin dans l’onglet Costumes.
Premiers pas 9
Cliquez sur le premier bouton au dessus de l’image du chat sur la figure 1-10 pour
choisir un costume à partir de la bibliothèque de Scratch. Sélectionnez alors une
image qui vous plaît dans la fenêtre qui apparaît. Appliquez les conseils de la
figure 1-10 pour vous familiariser avec les options des costumes.
L’onglet Sons
Les lutins savent également jouer des sons, ce qui rend vos programmes plus
vivants. Vous pouvez, par exemple, donner un son différent à un lutin lors-
qu’il est triste ou joyeux. Et si votre jeu contient un lutin ayant une apparence
de missile, donnez-lui un son différent lorsqu’il atteint ou rate une cible.
Les boutons de l’onglet Sons servent à organiser les différents sons que
votre lutin peut jouer. Scratch fournit même un outil d’édition de fichiers
audio (figure 1-11). Je n’en parlerai pas en détail dans ce livre, mais je vous
encourage à l’expérimenter par vous-même.
Figure 1-11 : L’onglet Sons sert à organiser les sons d’un lutin.
La plupart du temps, vous n’aurez besoin que des trois boutons en haut
de l’onglet Sons. Ils permettent de choisir un son à partir de la bibliothèque
de Scratch u, d’enregistrer un nouveau son v (si vous avez un microphone),
ou d’importer un son existant à partir de votre ordinateur w. Scratch peut
lire uniquement les fichiers audio WAV et MP3.
FA IT E S LE T E S T 1-8
10 Chapitre 1
FA IT E S LE T E S T 1-9
Cliquez sur cette icône
pour voir les informations
du lutin
Figure 1-12 : La zone d’informations du lutin
Premiers pas 11
La barre d’outils
Jetons un œil à la barre d’outils de Scratch (figure 1-14), en commençant
par les boutons. Une autre barre d’outils est proposée si vous êtes connecté
(voir l’annexe). Utilisez les boutons dupliquer et supprimer pour copier et
retirer les lutins, les costumes, les sons, les blocs ou les scripts. Les boutons
agrandir et réduire changent la taille. Cliquez sur le bouton que vous voulez
utiliser, puis sur un lutin (ou un script) pour mettre en œuvre son action.
Pour remettre votre curseur en forme de flèche, cliquez sur une zone vide
de l’écran. Vous pouvez utiliser le menu langage pour changer le langage de
l’interface utilisateur.
Allez sur le site Internet
Dupliquer
de Scratch.
Supprimer
Langage
Réduire
Agrandir
12 Chapitre 1
SCRATC
H PYTHON
WEB MAKERS
266685ILH_SCRATCH_Apropos.indd1 263
PourLesKIds_LaClasse_NEW-V2.indd 13/09/2016 09:26 13:03
12/09/2016