Quand tu joues sur Roblox, que tu fais défiler TikTok ou qu’un jeu compte ton score, des programmes travaillent en coulisses : ils gardent en mémoire des valeurs, répètent des actions et prennent des décisions. En classe, on apprend cette logique avec Scratch. Au brevet, l’objectif est clair : savoir lire un script, prédire ce que le lutin affiche et traduire un programme de calcul en expression algébrique. Pas besoin d’ordinateur pour réussir : il suffit de suivre les blocs dans l’ordre, comme une recette.
Mes objectifs
À la fin de ce chapitre, je sais :
- initialiser, modifier et afficher une variable, et suivre sa valeur pas à pas ;
- exécuter une boucle répéter n fois (boucle bornée) et une boucle répéter jusqu’à (boucle non bornée) ;
- lire une condition si… alors… sinon…, même imbriquée ;
- reconnaître un programme de calcul (entrée - traitement - sortie) et l’écrire sous la forme ax+b ;
- utiliser les coordonnées (x;y) pour situer le lutin.
À quoi ça sert ?
Tout ce que tu utilises au quotidien est piloté par ce genre de logique. Le nombre de pièces dans un jeu, c’est une variable qui augmente à chaque action. Le message « Accès en ligne » qui s’affiche selon ton âge, c’est une condition. Une animation qui se répète, c’est une boucle. Comprendre un script, c’est comprendre comment une machine décide - et au brevet, ça rapporte des points sans aucun calcul compliqué : il suffit d’être méthodique.
Les variables
Variable
Une variable est une case mémoire qui porte un nom et qui contient une valeur (souvent un nombre). Cette valeur peut changer pendant le programme. Trois actions reviennent toujours :
- initialiser :
mettre N à 7 (on fixe la valeur de départ) ;
- modifier :
ajouter 3 à N (la valeur stockée change) ;
- afficher :
dire N (le lutin montre la valeur actuelle).
Suivre une variable pas à pas
Pour savoir ce qu’affiche un script, on lit les blocs dans l’ordre, de haut en bas, et on note la valeur de la variable après chaque bloc.
Exemple : mettre N à 7, puis ajouter 3 à N, puis dire N.
mettre N à 7 → maintenant N=7 ;
ajouter 3 à N → N=7+3=10 ;
dire N → le lutin affiche 10.
Le lutin affiche donc 10 (et non 3).
Le bloc ajouter ne remplace pas la valeur
Un piège classique sur le bloc ajouter ... à.
- FAUX : «
ajouter 3 à N affiche 3. » Le bloc ajouter n’affiche rien et ne remplace pas la valeur : il s’ajoute à ce qui est déjà dans la case.
- VRAI : si N valait 7, alors après
ajouter 3 à N on a N=7+3=10. C’est cette nouvelle valeur, 10, que le bloc dire N affichera ensuite.
À retenir : ajouter 3 à N veut dire N devient N+3.
Les boucles
Boucle bornée : répéter n fois
Une boucle répéter n fois exécute les blocs placés à l’intérieur exactement n fois. On dit qu’elle est bornée : on connaît le nombre de tours à l’avance.
Par exemple, répéter 5 fois ( avancer de 60 ; tourner de 72 degrés ) exécute 5 fois la suite « avancer puis tourner ».
Quelle figure dessine le lutin ?
Avec répéter 5 fois ( avancer de 60 ; tourner de 72 degrés ), le lutin trace 5 segments de même longueur (60) séparés par 5 rotations égales de 72°.
Comme 5×72=360, le lutin fait un tour complet et revient à son point de départ : il dessine un pentagone régulier (5 côtés égaux). Son périmètre vaut 5×60=300.
Astuce : pour un polygone régulier à n côtés, l’angle de rotation est n360 degrés. Ici 5360=72, donc 5 côtés.
Boucle non bornée : répéter jusqu'à
Une boucle répéter jusqu’à recommence les blocs intérieurs tant que la condition écrite n’est pas vérifiée, et s’arrête dès qu’elle l’est. On dit qu’elle est non bornée : le nombre de tours n’est pas fixé au départ, on le déduit par le calcul.
Par exemple, répéter jusqu'à ( pièces ≥ 20 ) continue tant que la variable pièces est inférieure à 20, et s’arrête au moment où pièces atteint 20.
Compter les tours d'une boucle répéter jusqu'à
On cherche combien de fois la boucle tourne avant que la condition d’arrêt soit atteinte.
- Noter la valeur initiale de la variable testée et ce qu’elle gagne à chaque tour.
- Calculer combien de tours sont nécessaires pour atteindre le seuil d’arrêt :
nombre de tours=gain par tourseuil−valeur de deˊpart.
- En déduire les autres grandeurs (distance parcourue, score final…) en multipliant par le nombre de tours.
Les conditions
Condition si... alors... sinon...
Une condition fait prendre une décision au programme selon qu’un test est vrai ou faux.
si (test) alors ( bloc A ) : le bloc A n’est exécuté que si le test est vrai ;
si (test) alors ( bloc A ) sinon ( bloc B ) : si le test est vrai on fait A, sinon on fait B.
Le test utilise les opérateurs de comparaison : = (égal), = (différent), < (inférieur), > (supérieur), ≤ (inférieur ou égal), ≥ (supérieur ou égal).
Un test selon l'âge
Beaucoup de services demandent au moins 13 ans pour ouvrir un compte. Le script :
si (age ≥ 13) alors ( dire « Accès en ligne » ) sinon ( dire « Mode hors-ligne » )
- pour
age = 15 : 15≥13 est vrai, le lutin dit « Accès en ligne » ;
- pour
age = 11 : 11≥13 est faux, le lutin dit « Mode hors-ligne » ;
- pour
age = 13 : 13≥13 est vrai (le symbole ≥ inclut l’égalité), le lutin dit « Accès en ligne ».
Conditions imbriquées
On peut placer une condition à l’intérieur d’une autre pour distinguer plusieurs cas. Exemple avec un score :
si (score ≥ 100) alors ( dire « Or » ) sinon ( si (score ≥ 50) alors ( dire « Argent » ) sinon ( dire « Bronze » ) )
On lit de haut en bas : si le premier test échoue, on passe au sinon, qui contient un second test. Ainsi score = 70 donne « Argent » : 70≥100 est faux, mais 70≥50 est vrai.
Programmes de calcul et coordonnées
Programme de calcul (entrée - traitement - sortie)
Un programme de calcul transforme un nombre d’entrée en un nombre de sortie par une suite d’opérations (le traitement). En appelant x le nombre choisi, on peut écrire la sortie sous forme algébrique, souvent du type ax+b.
Cette écriture est très utile : elle permet de prévoir la sortie pour n’importe quelle entrée, sans refaire tout le programme.
Traduire un programme de calcul en expression
- Poser : « Je choisis un nombre, je l’appelle x. »
- Traduire chaque bloc dans l’ordre, en gardant l’expression entre parenthèses si besoin.
- Simplifier pour obtenir une forme du type ax+b.
- Tester avec une valeur précise pour vérifier.
Exemple : demander x, mettre R à x × 4, ajouter 6 à R, dire R.
mettre R à x × 4 → R=4x ;
ajouter 6 à R → R=4x+6.
Donc R=4x+6. Pour x=5 : R=4×5+6=20+6=26.
Déplacements et coordonnées
Dans Scratch, la scène est un repère. La position du lutin est donnée par un couple de coordonnées (x;y) : x est l’abscisse (gauche - droite), y l’ordonnée (bas - haut). Le centre de la scène est l’origine (0;0).
Les blocs mettre x à ..., ajouter ... à x, aller à x: ... y: ... déplacent le lutin. Par exemple, en partant de (0;0), le bloc ajouter 50 à x amène le lutin en (50;0).
La bonne méthode au brevet
Pour ne pas se tromper, garde toujours un petit tableau des valeurs sous les yeux et avance bloc par bloc :
| Bloc exécuté | Valeur de la variable |
|---|
mettre N à 7 | 7 |
ajouter 3 à N | 10 |
dire N | affiche 10 |
Tant que tu n’en sautes aucun et que tu notes après chaque bloc, tu ne peux pas te tromper : c’est exactement ce qu’attend le correcteur.