Programmer avec Scratch : algorithmes avancés
Découvre comment créer des programmes plus complexes avec Scratch en utilisant les variables, les opérateurs et les structures conditionnelles.
💡 Et si ton personnage dans Scratch pouvait compter ses pièces d'or, ou réagir différemment selon tes actions ? C'est possible avec les algorithmes avancés !
Tu sais déjà créer des animations et des histoires simples avec Scratch. Maintenant, nous allons passer à la vitesse supérieure ! Pour rendre tes programmes plus intelligents et interactifs, comme un jeu qui compte les points ou un quiz qui pose des questions, tu as besoin d'outils plus puissants : les variables, les opérateurs et les conditions. Ce chapitre va te montrer comment les utiliser.
Objectifs de cette leçon
- Comprendre et utiliser des variables pour stocker des informations
- Utiliser les opérateurs mathématiques dans des scripts
- Maîtriser la structure conditionnelle 'si...alors...sinon...'
- Créer un petit jeu ou une animation interactive
Les variables : la mémoire de ton programme
Une variable est comme une boîte étiquetée dans laquelle tu peux ranger une information (un nombre, un mot...). Tu peux ensuite utiliser, modifier ou afficher cette information dans ton programme. Par exemple, pour créer un compteur de points dans un jeu, tu auras besoin d'une variable appelée 'score'.
Créer un compteur de clics sur un sprite.
etapes: Dans la catégorie 'Variables', clique sur 'Créer une variable' et nomme-la 'clics'.,Ajoute le bloc 'mettre [clics] à 0' quand le drapeau vert est cliqué (pour initialiser).,Sur ton sprite, ajoute : 'quand ce sprite est cliqué' -> 'ajouter à [clics] 1'.,Utilise le bloc 'dire [clics]' pour afficher la valeur.
Pense toujours à initialiser ta variable (la remettre à une valeur de départ) au début de ton programme avec le bloc 'mettre [nom variable] à 0'. Sinon, elle pourrait garder une valeur d'une précédente exécution.
Les opérateurs : faire des calculs
Les opérateurs te permettent d'effectuer des calculs avec tes variables ou des nombres. Tu les trouves dans la catégorie 'Opérateurs'. Les principaux sont '+' (addition), '-' (soustraction), '*' (multiplication), '/' (division) et 'arrondi de'.
Calculer et afficher la moyenne de deux notes.
etapes: Crée deux variables : 'note1' et 'note2'. Donne-leur des valeurs (par exemple 12 et 18).,Crée une troisième variable 'moyenne'.,Utilise le bloc 'mettre [moyenne] à' et dans l'espace, prends un bloc 'opérateur' pour faire (note1 + note2) / 2.,Fais dire la moyenne au sprite.
Fais attention à l'ordre des opérations. Utilise les blocs d'opérateurs emboîtés pour être sûr du calcul. Par exemple, pour (a+b)/2, tu dois d'abord faire l'addition dans un premier bloc, puis la division dans un second.
La condition 'si...alors...sinon...'
Cette structure permet à ton programme de prendre des décisions. Il exécute une série d'instructions seulement SI une condition est vraie. Tu peux même prévoir une autre série d'instructions SINON (si la condition est fausse). Les conditions se basent souvent sur des comparaisons (>, <, =) entre des variables ou des nombres.
Faire réagir un personnage si le score dépasse 10.
etapes: Supposons que tu as une variable 'score'.,Utilise le bloc 'si <> alors...sinon...' de la catégorie 'Contrôle'.,Dans l'espace en forme de losange (la condition), mets un bloc d'opérateur de comparaison 'score > 10'.,Dans le 'alors', mets 'dire Bravo ! pendant 2 secondes'.,Dans le 'sinon', mets 'dire Continue ! pendant 2 secondes'.
La condition doit être une question qui a une réponse par 'vrai' ou 'faux'. Vérifie bien que tu utilises le bon opérateur de comparaison (=, >, <).
Projet : Crée ton quiz interactif
Mettons tout cela en pratique ! Tu vas créer un quiz de 2 questions avec Scratch. Le programme posera une question, vérifiera la réponse de l'utilisateur et comptera le nombre de bonnes réponses.
Structure du projet 'Quiz Mathématique'.
etapes: Crée une variable 'bonnes_réponses' initialisée à 0.,Le sprite pose la première question avec 'demander [Quel est le double de 7 ?] et attendre'.,Utilise une condition : 'si (réponse) = 14 alors' -> 'ajouter à [bonnes_réponses] 1' et 'dire Exact !' 'sinon' -> 'dire Faux, c'est 14'.,Pose une seconde question (ex: 15 - 8 ?) et refais une condition pour vérifier si la réponse est 7.,À la fin, affiche un message avec le score final : 'dire (regroupe [Ton score est : ] (bonnes_réponses) [ /2])'.
Quand Scratch pose une question avec 'demander', la réponse de l'utilisateur est stockée dans la variable spéciale 'réponse'. Tu peux l'utiliser directement dans tes conditions.
À retenir
- •Une variable est une boîte nommée qui stocke une information (nombre ou texte) que l'on peut modifier.
- •Les opérateurs (+, -, *, /) permettent d'effectuer des calculs dans les scripts.
- •La structure 'si [condition] alors...sinon...' permet de créer des programmes qui prennent des décisions.
- •Pour un programme propre, il faut initialiser les variables (les mettre à une valeur de départ) au début.
Questions fréquentes
À quoi sert vraiment une variable ?
Une variable sert à se souvenir d'une information qui peut changer pendant l'exécution du programme, comme un score, un compteur, le nom d'un joueur ou la réponse à une question. Sans variable, ton programme ne peut pas 'se souvenir' de ce qu'il s'est passé avant.
Peut-on mettre du texte dans une variable ?
Oui ! Par défaut, Scratch utilise des nombres, mais tu peux aussi mettre du texte (on appelle ça une chaîne de caractères). Par exemple, tu peux avoir une variable 'meilleur_joueur' dans laquelle tu stockes un nom.
Quelle est la différence entre '=' dans les opérateurs et 'mettre à' pour une variable ?
C'est une grande source de confusion ! Le '=' dans les opérateurs (en forme de losange) sert à COMPARER deux valeurs (est-ce que A est égal à B ?). Le bloc 'mettre [var] à' sert à DONNER une nouvelle valeur à une variable (je donne la valeur 10 à ma variable 'score').
Est-ce que je peux mettre plusieurs blocs dans le 'alors' ou le 'sinon' ?
Absolument ! Tu peux glisser autant de blocs que tu veux à l'intérieur des emplacements 'alors' et 'sinon'. Tous ces blocs s'exécuteront si la condition correspondante est vérifiée.
