← Retour aux ressources
Mathématiques · Classe de 4ᵉ

Initiation à la programmation

Algorithmes, boucles, variables et figures avec Scratch

À propos de cette page
Ces exercices corrigés sur « Initiation à la programmation » en quatrième permettent de s'entraîner et de vérifier ses acquis en mathématiques. Ils suivent le programme officiel de quatrième et sont classés par difficulté (facile, moyen, difficile). Au programme : Qu'est-ce qu'un algorithme ?, La séquence : exécuter dans l'ordre, Les variables : mémoriser une valeur, Les boucles : répéter sans tout réécrire. Écris ta réponse puis clique sur « Vérifier » : la correction est immédiate et tolère majuscules, espaces et ponctuation. Cet entraînement aide à mémoriser les méthodes, repérer ses erreurs et gagner en confiance avant un contrôle. Exercices gratuits proposés par un professeur particulier à Marseille pour réviser mathématiques en quatrième.

Entraîne-toi par niveau. Chaque exercice teste une partie du cours. Cherche d'abord seul, puis clique sur « Voir le corrigé ».

Facile
Ex. 1Range ces étapes dans le bon ordre pour faire un thé :
a) verser l'eau dans la tasse
b) faire bouillir l'eau
c) ajouter le sachet de thé
d) attendre 3 minutes
Ordre correct : b) → a) → c) → d). On fait bouillir l'eau, on la verse, on ajoute le sachet, puis on attend l'infusion. L'ordre des instructions est essentiel dans un algorithme.
Ex. 2Que fait ce programme ? Décris le résultat avec tes mots :
quand 🏳 cliqué · dire « Salut » pendant 2 s · avancer de 50 pas
Quand on clique sur le drapeau vert, le lutin affiche « Salut » pendant 2 secondes, puis avance de 50 pas. Les deux actions se font dans l'ordre, l'une après l'autre.
Ex. 3Vrai ou faux ?
a) Un algorithme doit s'arrêter au bout d'un nombre fini d'étapes.
b) Dans une séquence, l'ordre des instructions n'a aucune importance.
c) Le lutin est le personnage qui exécute le programme dans Scratch.
a) VRAI.
b) FAUX : l'ordre compte beaucoup.
c) VRAI.
Ex. 4On a la variable score. Donne sa valeur après chaque ligne :
mettre [score] à (0) · ajouter (4) à [score] · ajouter (2) à [score]
Après « mettre à 0 » : score = 0.
Après « ajouter 4 » : score = 4.
Après « ajouter 2 » : score = 6.
Ex. 5Quelle est la différence entre les deux blocs ?
a) mettre [vie] à (3)
b) ajouter (3) à [vie]
a) remplace la valeur : vie devient 3 (l'ancienne valeur est perdue).
b) augmente la valeur : on ajoute 3 à ce qu'il y avait déjà. Si vie valait 5, après a) elle vaut 3, après b) elle vaut 8.
Ex. 6Combien de fois le bloc « avancer de 10 pas » est-il exécuté ?
répéter (6) fois : avancer de 10 pas
6 fois. Au total, le lutin avance de 6 × 10 = 60 pas.
Ex. 7Pour dessiner un carré, combien de fois faut-il répéter « avancer + tourner », et de quel angle tourne-t-on à chaque sommet ?
On répète 4 fois et on tourne de 90° (car 360 ÷ 4 = 90).
Ex. 8Sur la scène de Scratch, où se trouve le point de coordonnées (0 ; 0) ? Que vaut x quand le lutin va vers la droite ?
(0 ; 0) est au centre de la scène. Quand le lutin va vers la droite, x augmente (devient positif).
Ex. 9Que dit le lutin ?
mettre [age] à (12) · si (age > 10) alors : dire « Ado » · sinon : dire « Enfant »
12 > 10 est vrai, donc le lutin dit « Ado ».
Ex. 10Programme de calcul : « Choisis 7 · ajoute 5 · multiplie par 3 ». Quel résultat obtient-on ?
7 + 5 = 12, puis 12 × 3 = 36.
Moyen
Ex. 11Suis ce programme et donne la valeur finale de chaque variable :
mettre [a] à (3) · mettre [b] à (a + 4) · ajouter (a) à [b]
a = 3 (ne change pas).
b = a + 4 = 3 + 4 = 7, puis b = 7 + 3 = 10.
Ex. 12Écris (en texte) le programme qui dessine un triangle équilatéral de côté 80, avec le stylo.
stylo en position d'écriture
répéter (3) fois
  avancer de 80 pas
  tourner de 120 degrés
fin

L'angle vaut 360 ÷ 3 = 120°.
Ex. 13Cette boucle dessine un polygone régulier :
répéter (5) fois : avancer de 60 pas · tourner de 72 degrés
Quelle figure obtient-on ? Vérifie l'angle.
Un pentagone régulier (5 côtés). Vérification : 360 ÷ 5 = 72°. ✓
Ex. 14Combien de fois la boucle s'exécute-t-elle, et que vaut n à la fin ?
mettre [n] à (0) · répéter jusqu'à (n = 4) : ajouter (1) à [n]
La boucle tourne 4 fois (n passe par 1, 2, 3, 4). À la fin, n = 4 et la boucle s'arrête.
Ex. 15Le lutin part du point (0 ; 0). On exécute :
ajouter (50) à x · ajouter (30) à y · ajouter (−20) à x
Où se trouve-t-il à la fin ?
x : 0 + 50 − 20 = 30. y : 0 + 30 = 30. Le lutin est au point (30 ; 30).
Ex. 16Que dit le lutin pour note = 8 ? puis pour note = 15 ?
si (note > 10) alors : dire « Reçu » · sinon : dire « À revoir »
note = 8 : 8 > 10 est faux → « À revoir ».
note = 15 : 15 > 10 est vrai → « Reçu ».
Ex. 17Programme de calcul : « Choisis un nombre · multiplie par 4 · ajoute 6 · divise par 2 ». Applique-le à 5, puis à 10.
Pour 5 : 5 × 4 = 20, +6 = 26, ÷2 = 13.
Pour 10 : 10 × 4 = 40, +6 = 46, ÷2 = 23.
Ex. 18Réécris ce programme avec une boucle :
avancer de 20 pas · avancer de 20 pas · avancer de 20 pas
répéter (3) fois : avancer de 20 pas
La boucle évite de recopier le même bloc.
Ex. 19On veut placer le lutin tout en haut à droite de la scène. Quel bloc utiliser : « aller à x : 200 y : 150 » ou « avancer de 200 pas » ? Explique.
aller à x : 200 y : 150. Ce bloc place le lutin à un point précis, peu importe sa position de départ. « avancer de 200 pas » dépend de la direction du lutin et ne garantit pas l'arrivée en haut à droite.
Ex. 20Suis ce programme avec un tableau de variables :
mettre [x] à (2) · mettre [y] à (5) · mettre [x] à (y) · mettre [y] à (x)
Que valent x et y à la fin ?
x = 2, y = 5 ; puis x reçoit y → x = 5 ; puis y reçoit x (qui vaut déjà 5) → y = 5. Les deux valent 5 : on a perdu l'ancien x. Pour vraiment échanger deux variables, il faut une 3e boîte temporaire.
Difficile
Ex. 21Que vaut S à la fin de ce programme ?
mettre [S] à (0) · mettre [i] à (1) · répéter (4) fois : ajouter (i) à [S] · ajouter (1) à [i]
Tour 1 : S = 0+1 = 1, i devient 2.
Tour 2 : S = 1+2 = 3, i devient 3.
Tour 3 : S = 3+3 = 6, i devient 4.
Tour 4 : S = 6+4 = 10, i devient 5. On a calculé 1+2+3+4 = 10.
Ex. 22Écris un programme qui, pour une variable x donnée, dit « positif » si x > 0, « négatif » si x < 0, et « nul » sinon.
si (x > 0) alors
  dire « positif »
sinon
  si (x < 0) alors
    dire « négatif »
  sinon
    dire « nul »
  fin
fin

On emboîte un second « si…sinon » dans le « sinon » du premier.
Ex. 23Voici un programme de calcul : « Choisis n · multiplie par 2 · ajoute 10 · divise par 2 · enlève le nombre de départ ». Teste avec n = 3 et n = 8. Que remarques-tu ? Explique pourquoi.
n = 3 : 3×2=6, +10=16, ÷2=8, −3 = 5.
n = 8 : 8×2=16, +10=26, ÷2=13, −8 = 5.
On obtient toujours 5 ! En effet : (2n + 10) ÷ 2 = n + 5, puis (n + 5) − n = 5. Le résultat ne dépend pas de n.
Ex. 24Cette boucle dessine une figure :
répéter (6) fois : avancer de 50 pas · tourner de 60 degrés
Quelle figure ? Quel angle pour un octogone (8 côtés) ?
6 côtés, angle 360 ÷ 6 = 60° → un hexagone régulier. Pour un octogone : 360 ÷ 8 = 45°.
Ex. 25On veut dessiner un escalier de 3 marches (chaque marche : avancer 30 vers la droite, puis monter 30). Écris le programme avec une boucle.
stylo en position d'écriture
répéter (3) fois
  ajouter (30) à x
  ajouter (30) à y
fin

Chaque tour trace une marche : un pas vers la droite (x) et un pas vers le haut (y).
Ex. 26Que vaut p à la fin ?
mettre [p] à (1) · mettre [i] à (1) · répéter jusqu'à (i > 3) : mettre [p] à (p × i) · ajouter (1) à [i]
i=1 : p = 1×1 = 1, i devient 2.
i=2 : p = 1×2 = 2, i devient 3.
i=3 : p = 2×3 = 6, i devient 4.
i=4 > 3 → arrêt. p = 6 (c'est 1×2×3, la « factorielle » de 3).
Ex. 27Un jeu : à chaque clic, le score augmente de 1. Quand il atteint 10, le lutin dit « Bravo ! ». Écris ce programme (utilise « répéter jusqu'à »).
mettre [score] à (0)
répéter jusqu'à (score = 10)
  attendre un clic sur le lutin
  ajouter (1) à [score]
fin
dire « Bravo ! »

La condition d'arrêt est « score = 10 ». Le « dire » se fait après la boucle.
Ex. 28Un programme calcule la table de multiplication de 7 jusqu'à 7×5. Complète le tableau de la variable m :
mettre [m] à (0) · mettre [i] à (1) · répéter (5) fois : mettre [m] à (7 × i) · ajouter (1) à [i]
i=1 → m=7 ; i=2 → m=14 ; i=3 → m=21 ; i=4 → m=28 ; i=5 → m=35. À la fin, m = 35 (c'est 7 × 5).
Continuer ce chapitre