4ème Algorithmique Scratchvariableévénementconditionboucleprogramme de calcul

Algorithmique et programmation Scratch

Scratch en 4ème : manipuler une variable, écrire des conditions « si… alors… sinon », écrire un programme simple et modifier un programme donné : programmes de calcul et constructions géométriques paramétrées.

Faire le quiz →

Définitions

Définition 1 — variable. Une variable est une boîte qui porte un nom et contient une valeur (nombre ou texte), que le programme peut lire ou modifier. En 5ème, tu lisais une variable ; cette année, tu apprends à la manipuler. Exemple : après mettre n à 5, la variable nn vaut 5, quoi qu’elle ait contenu avant.

Définition 2 — événement. Un événement est le bloc « chapeau » qui déclenche un script : sans lui, le script ne démarre jamais.

ÉvénementQuand ?
quand le drapeau vert est cliquéau lancement du programme
quand la touche espace est presséeà chaque appui
quand ce lutin est cliquéà chaque clic sur le lutin
quand je reçois messagequand un autre script envoie ce message

Exemple : demander « Ton âge ? » et attendre stocke la réponse de l’utilisateur dans le bloc réponse.

Définition 3 — instruction conditionnelle. Le bloc si <condition> alors … exécute ses instructions seulement quand la condition est vraie. La forme si <condition> alors … sinon … précise aussi ce qu’il faut faire quand elle est fausse. Exemple : si (réponse < 18) alors dire « mineur » sinon dire « majeur ».

Définition 4 — boucle. Une boucle répète un groupe d’instructions : répéter n fois pour un nombre connu de répétitions (polygones), répéter indéfiniment pour les animations et les jeux. Exemple : répéter 4 fois : avancer de 50 ; tourner de 90° trace un carré. (La boucle « répéter jusqu’à … » sera étudiée en 3ème.)

Théorèmes et propriétés

Propriété 1 — affectation et copie de valeur. mettre n à 5 remplace la valeur de nn ; ajouter 3 à n la modifie (elle augmente de 3). Une affectation copie une valeur : après mettre b à a, modifier aa ne change plus bb.

BlocEffet
mettre n à 5nn vaut 5, quoi qu’il contenait avant
ajouter 3 à nnn augmente de 3
mettre n à (n × 2)nn est remplacé par son double

Exemple : mettre a à 4 ; mettre b à a ; mettre a à 7 : à la fin, b=4b = 4 (une copie, pas un lien).

Propriété 2 — exécution en séquence. Les instructions d’un script s’exécutent dans l’ordre, chacune à partir de la valeur courante des variables. Changer l’ordre peut changer le résultat. Exemple : mettre n à 5 ; ajouter 3 à n ; mettre n à (n × 2) donne 5→8→165 \to 8 \to 16.

Propriété 3 — si… alors… sinon : une seule branche. Avec si … alors … sinon …, exactement une des deux branches s’exécute : celle du haut si la condition est vraie, celle du bas sinon. Sans sinon, rien ne se passe quand la condition est fausse — le script continue après le bloc. Exemple : pour la condition réponse < 18 et la réponse 18, 18<1818 < 18 est faux : c’est la branche « sinon » qui s’exécute.

Propriété 4 — scripts en parallèle. Plusieurs scripts peuvent tourner en même temps, chacun déclenché par son événement, et partager les mêmes variables. Exemple : un script « drapeau vert » initialise score à 0, un script « quand ce lutin est cliqué » ajoute 1 à score : c’est la structure de base d’un jeu.

Propriété 5 — angle d’un polygone régulier. Pour tracer un polygone régulier à nn côtés, le lutin tourne à chaque sommet de 360÷n degreˊs360 \div n \text{ degrés} car il fait un tour complet en nn rotations. Exemple : 72°72° pour un pentagone, 60°60° pour un hexagone, 90°90° pour un carré.

Méthodes

Méthode 1 — exécuter un script à la main.

  1. Suivre les instructions dans l’ordre (Propriété 2).
  2. Noter la valeur de chaque variable après chaque ligne, en appliquant la Propriété 1 (mettre remplace, ajouter cumule).

Exemple résolu :

mettre n à 5        → n = 5
ajouter 3 à n       → n = 8
mettre n à (n × 2)  → n = 16

Méthode 2 — traduire un programme de calcul.

  1. Demander le nombre de départ (demander … et attendre, puis mettre n à (réponse)).
  2. Traduire chaque étape du programme par une affectation, dans l’ordre du texte (Propriété 2).
  3. Afficher le résultat (dire n).

Exemple résolu : « choisir un nombre, le tripler, ajouter 15 » :

demander "Choisis un nombre" et attendre
mettre n à (réponse)
mettre n à (n × 3)
mettre n à (n + 15)
dire n

Inverser les deux affectations calculerait 3(n+15)3(n + 15) au lieu de 3n+153n + 15 : c’est la question de l’équivalence des programmes vue en calcul littéral.

Méthode 3 — écrire une condition.

  1. Identifier la question posée (comparaison : <, >, =).
  2. Écrire si <condition> alors …, et ajouter sinon … si une action est prévue quand la condition est fausse (Définition 3).
  3. Vérifier les cas limites : pour réponse < 18, la réponse 18 part dans la branche « sinon » (Propriété 3).

Exemple résolu : demander « Ton âge ? » et attendre ; si (réponse < 18) alors dire « mineur » sinon dire « majeur » : pour 18, le lutin dit « majeur ».

Méthode 4 — tracer et modifier une figure paramétrée.

  1. Pour un polygone régulier à nn côtés : répéter n fois : avancer de L ; tourner de (360 ÷ n)° (Propriété 5).
  2. Rendre la figure paramétrée : demander L à l’utilisateur, le carré a alors la taille choisie.
  3. Modifier un programme donné : repérer les paramètres à changer (nombre de répétitions, angle, longueur).

Exemple résolu : le script répéter 4 fois : avancer de 50 ; tourner de 90° trace un carré. Pour un hexagone régulier, on change deux paramètres : répéter 6 fois et tourner de 60° (360÷6=60360 \div 6 = 60).

Méthode 5 — construire un compteur.

  1. Un script d’initialisation : quand le drapeau vert est cliqué : mettre score à 0 (c’est mettre qu’il faut : on écrase).
  2. Un script d’incrément : quand ce lutin est cliqué : ajouter 1 à score (c’est ajouter qu’il faut : on cumule).
  3. Les deux scripts tournent en parallèle et partagent la variable (Propriété 4).

Exemple résolu : après un lancement (drapeau vert) puis 3 clics sur le lutin, score vaut 0+3×1=30 + 3 \times 1 = 3.

Pièges classiques

Piège 1 — mettre n à 3 et ajouter 3 à n ne font pas la même chose. Le premier écrase (nn vaut 3, quelle que soit sa valeur précédente), le second cumule (nn augmente de 3). Dans un compteur, c’est ajouter ; dans une initialisation, c’est mettre (Propriété 1, Méthode 5).

Piège 2 — l’ordre des affectations compte. « Tripler puis ajouter 15 » et « ajouter 15 puis tripler » ne donnent pas le même résultat : 3n+153n + 15 contre 3(n+15)3(n + 15) (Propriété 2, Méthode 2).

Piège 3 — le cas limite d’une condition. réponse < 18 est fausse pour 18 : l’égalité part toujours dans la branche « sinon » quand la comparaison est stricte (Propriété 3).

Quiz — Algorithmique Scratch

10 questions · correction immédiate · sans inscription

Tester →