Algorithmique Scratch
5EME • MATHS — Learna
Track your progress
Log in to save progress and quiz attempts.
Exercices — Algorithmique / Scratch (avec corrigés)
20 exercices progressifs sur les instructions, les variables, les tests, les boucles, les scripts Scratch, le repérage d’erreurs et la compréhension de programmes simples.

Exercice 1 — Vocabulaire de base

Niveau : Facile
Compléter :
1. Une suite ordonnée d’instructions s’appelle un ________.
2. Une grandeur qui peut changer pendant l’exécution s’appelle une ________.
3. Une instruction répétée plusieurs fois peut être gérée par une ________.
Corrigé :
1. un algorithme ou un programme ;
2. une variable ;
3. une boucle.

Exercice 2 — Ordre des instructions

Niveau : Facile
On veut demander un nombre, puis l’afficher, puis ajouter 1 et afficher le résultat.
Pourquoi l’ordre des instructions est-il important ?
Corrigé :
L’ordre est important car un programme exécute les instructions l’une après l’autre.
Si on change l’ordre, on peut afficher un mauvais résultat ou utiliser une valeur qui n’a pas encore été définie.

Exercice 3 — Lire un script simple

Niveau : Facile
Un script fait :
demander "Donne un nombre"
mettre n à la réponse
dire n
Que fait ce script ?
Corrigé :
Le script demande un nombre à l’utilisateur, stocke ce nombre dans la variable \(n\), puis affiche ce nombre.

Exercice 4 — Variable et calcul

Niveau : Facile
On donne le script :
mettre n à 5
mettre n à n + 3
dire n
Quelle valeur est affichée ?
Corrigé :
Au départ : \[ n=5 \] puis : \[ n=5+3=8 \] La valeur affichée est : \[ 8 \]

Exercice 5 — Instruction répétée

Niveau : Facile
On veut avancer de 10 pas, 4 fois de suite dans Scratch.
Quelle structure est la plus adaptée : une variable, une boucle ou un test ?
Corrigé :
La structure la plus adaptée est une boucle, car on répète la même action plusieurs fois.

Exercice 6 — Comprendre une boucle

Niveau : Moyen
On donne le script :
mettre s à 0
répéter 3 fois
  ajouter 2 à s
dire s
Quelle valeur finale de \(s\) obtient-on ?
Corrigé :
Au départ : \[ s=0 \] Après 3 répétitions de “ajouter 2” : \[ s=0+2+2+2=6 \] La valeur finale affichée est : \[ 6 \]

Exercice 7 — Test simple

Niveau : Moyen
On donne le script :
demander "Donne un nombre"
si réponse > 0 alors
  dire "positif"
sinon
  dire "nul ou négatif"
Que dit le script si l’utilisateur entre \(-3\) ?
Corrigé :
Comme : \[ -3 \not> 0 \] le test est faux.
Le script dit :
nul ou négatif

Exercice 8 — Programme de calcul

Niveau : Moyen
Un script demande un nombre \(x\), calcule \(2x+5\), puis affiche le résultat.
Quel résultat obtient-on si \(x=7\) ?
Corrigé :
On calcule : \[ 2\times 7 + 5 = 14 + 5 = 19 \] Le script affiche : \[ 19 \]

Exercice 9 — Compléter un script

Niveau : Moyen
On veut calculer le triple d’un nombre saisi. Quelle instruction manque ?
demander "Donne un nombre"
mettre n à la réponse
mettre r à ________
dire r
Corrigé :
Il faut écrire :
3 × n
ou, en écriture logique : \[ r=3n \]

Exercice 10 — Répétition et tracé

Niveau : Moyen
Dans Scratch, on répète 4 fois :
avancer de 50 pas
tourner de 90°
Quelle figure est tracée ?
Corrigé :
Le script trace un carré, car on effectue 4 côtés avec un angle droit à chaque fois.

Exercice 11 — Débogage simple

Niveau : Moyen
Un élève veut calculer \(n+1\) mais il a écrit :
mettre n à la réponse
mettre n à 1
dire n
Expliquer l’erreur.
Corrigé :
L’élève remplace la valeur de \(n\) par \(1\), au lieu d’ajouter \(1\) à \(n\).
Il aurait fallu écrire une instruction du type :
mettre n à n + 1

Exercice 12 — Suivre les valeurs

Niveau : Moyen
On donne le script :
mettre a à 2
mettre b à 5
mettre a à a + b
dire a
Quelle valeur est affichée ?
Corrigé :
Au départ : \[ a=2,\quad b=5 \] Puis : \[ a=2+5=7 \] La valeur affichée est : \[ 7 \]

Exercice 13 — Programme à interpréter

Niveau : Difficile
On donne le script :
demander "Nombre ?"
mettre x à la réponse
mettre y à x × x
dire y
Que calcule ce programme ?
Corrigé :
Le programme calcule le carré du nombre saisi.
En effet : \[ y=x\times x=x^2 \]

Exercice 14 — Test pair / impair

Niveau : Difficile
On veut écrire un script qui dit si un nombre est pair ou impair.
Quelle idée mathématique faut-il utiliser ?
Corrigé :
Il faut tester le reste dans la division par \(2\).
Un nombre est pair si son reste dans la division par \(2\) est nul, sinon il est impair.

Exercice 15 — Boucle de comptage

Niveau : Difficile
On donne le script :
mettre c à 1
répéter 5 fois
  mettre c à c + 2
dire c
Quelle valeur finale obtient-on ?
Corrigé :
On part de : \[ c=1 \] On ajoute \(2\), 5 fois : \[ c=1+5\times 2=11 \] La valeur finale est : \[ 11 \]

Exercice 16 — Comparer deux scripts

Niveau : Difficile
Script A :
mettre x à 3
mettre y à 2 × x + 1
Script B :
mettre x à 3
mettre y à 2 × (x + 1)
Les deux scripts donnent-ils le même résultat ?
Corrigé :
Script A : \[ y=2\times 3+1=7 \] Script B : \[ y=2\times (3+1)=8 \] Les deux scripts ne donnent donc pas le même résultat.

Exercice 17 — Construction d’un algorithme

Niveau : Difficile
Écrire en phrases un algorithme qui demande un nombre, lui ajoute \(4\), multiplie le résultat par \(3\), puis affiche le résultat final.
Corrigé :
Algorithme possible :
1. demander un nombre ;
2. stocker ce nombre dans une variable ;
3. ajouter \(4\) à cette variable ;
4. multiplier le résultat par \(3\) ;
5. afficher le résultat.

Exercice 18 — Figure répétitive

Niveau : Difficile
Dans Scratch, on répète 3 fois :
avancer de 60 pas
tourner de 120°
Quelle figure est tracée ?
Corrigé :
Le script trace un triangle équilatéral, car les 3 côtés sont identiques et les rotations successives de \(120^\circ\) permettent de fermer la figure.

Exercice 19 — Erreur logique

Niveau : Difficile
Un script veut afficher les nombres de \(1\) à \(5\), mais il commence par mettre \(n\) à \(0\), puis répète 5 fois :
dire n
ajouter 1 à n
Quels nombres affiche-t-il réellement ?
Corrigé :
Le script affiche d’abord la valeur actuelle de \(n\), puis ajoute \(1\).
Il affiche donc : \[ 0,\;1,\;2,\;3,\;4 \] et non \(1\) à \(5\).

Exercice 20 — Problème final

Niveau : Difficile
On considère le script suivant :
demander "Donne un nombre"
mettre n à la réponse
mettre r à 0
répéter 4 fois
  ajouter n à r
dire r
1. Que calcule ce script ?
2. Quel résultat affiche-t-il pour \(n=6\) ?
Corrigé :
1. Le script ajoute \(n\) à \(r\), 4 fois de suite, donc il calcule : \[ 4n \] 2. Pour \(n=6\), on obtient : \[ 4\times 6=24 \] Le script affiche : \[ 24 \]