MathLvl
CinquièmeExercices corrigés20 exercicesCorrections détaillées

Exercices corrigés : Algorithmique et Scratch — Cinquième

Besoin de revoir la leçon avant de te lancer ? Cours et fiche de révision : Algorithmique et Scratch

Niveau
Cinquième
Chapitre
Algorithmique et Scratch
Nombre d'exercices
20 exercices corrigés
Difficulté
Facile à défi

En 5ᵉ, trois notions s'ajoutent aux séquences et aux boucles vues en 6ᵉ : les variables (des cases mémoire qui retiennent une valeur), les tests « si… alors… sinon » et les boucles imbriquées. Ces 20 exercices apprennent à suivre un programme pas à pas, à prédire un tracé, à repérer et corriger une erreur, puis à écrire soi-même un programme qui répond à un besoin précis. Les programmes sont écrits en langage courant, comme les blocs de Scratch.

Cherche d'abord par toi-même, puis clique sur « Voir la correction » : chaque étape est détaillée avec rappels de cours et erreurs fréquentes à éviter.

1

Exercice 1 — Suivre une variable

Application directe

Un programme dit : « a prend la valeur 5 ; a prend la valeur a + 3 ; a prend la valeur a × 2 ».

Quelle est la valeur finale de a ?

Voir la correction

Correction détaillée

  1. 1

    Une variable est une case mémoire : à chaque instruction, elle est écrasée par la nouvelle valeur.

  2. 2

    Au départ, a = 5.

  3. 3

    « a prend la valeur a + 3 » : on calcule 5 + 3 = 8, donc a vaut maintenant 8.

  4. 4

    « a prend la valeur a × 2 » : on calcule 8 × 2 = 16, donc a vaut 16.

  5. 5

    La valeur finale est 16.

Réponse : a = 16

Rappel de cours : « a prend la valeur a+3 » n'est pas une équation : c'est un ordre de remplacement.

Erreur fréquente : Résoudre a = a + 3 comme une équation : en algorithmique, l'ancienne valeur est simplement remplacée.

2

Exercice 2 — Échanger deux variables

Application directe

On a x = 4 et y = 9.

Que valent x et y après : « x prend la valeur y ; y prend la valeur x » ?

Voir la correction

Correction détaillée

  1. 1

    Au départ : x = 4 et y = 9.

  2. 2

    « x prend la valeur y » : x devient 9.

    La valeur 4 est perdue !

  3. 3

    « y prend la valeur x » : x vaut maintenant 9, donc y devient 9 aussi.

  4. 4

    À la fin, x = 9 et y = 9 : l'échange a échoué.

  5. 5

    Pour échanger correctement, il faut une troisième variable : « t prend la valeur x ; x prend la valeur y ; y prend la valeur t ».

Réponse : x = 9 et y = 9 : l'échange rate, il faut une variable intermédiaire.

Rappel de cours : Pour échanger deux variables, on garde d'abord une copie dans une troisième.

Erreur fréquente : Croire que les deux affectations se font « en même temps » : elles s'exécutent l'une après l'autre.

3

Exercice 3 — Un test simple

Application directe

Programme : « Si le nombre est supérieur à 10, alors afficher "grand", sinon afficher "petit" ».

Que s'affiche-t-il pour 15 ? pour 10 ? pour 3 ?

Voir la correction

Correction détaillée

  1. 1

    Pour 15 : la condition « 15 > 10 » est vraie, donc on affiche « grand ».

  2. 2

    Pour 10 : la condition « 10 > 10 » est FAUSSE, car 10 n'est pas strictement supérieur à 10.

  3. 3

    On exécute donc la branche « sinon » : on affiche « petit ».

  4. 4

    Pour 3 : la condition est fausse, on affiche « petit ».

Réponse : 15 → « grand » · 10 → « petit » · 3 → « petit ».

Rappel de cours : « Supérieur à » est strict : 10 > 10 est faux. Pour inclure la valeur, il faut « supérieur ou égal ».

Erreur fréquente : Traiter le cas limite (10) comme « grand » : c'est là que se cachent la plupart des erreurs de programme.

4

Exercice 4 — Boucle et compteur

Application directe

Programme : « s prend la valeur 0 ; répéter 4 fois [ s prend la valeur s + 5 ] ».

Que vaut s à la fin ?

Voir la correction

Correction détaillée

  1. 1

    Au départ, s = 0.

  2. 2

    Tour 1 : s = 0 + 5 = 5.

  3. 3

    Tour 2 : s = 5 + 5 = 10.

  4. 4

    Tour 3 : s = 10 + 5 = 15.

  5. 5

    Tour 4 : s = 15 + 5 = 20.

  6. 6

    À la fin, s = 20.

    On aurait pu le prévoir : ajouter 5 quatre fois revient à ajouter 4 × 5 = 20.

Réponse : s = 20

Rappel de cours : Une variable qui accumule des valeurs dans une boucle s'appelle un « compteur » ou un « accumulateur ».

Erreur fréquente : Répondre 5 en oubliant que la boucle répète l'instruction quatre fois.

5

Exercice 5 — Prédire un tracé

Application directe

Que trace « répéter 5 fois [ avancer de 70 ; tourner de 72° à droite ] » ?

Voir la correction

Correction détaillée

  1. 1

    La boucle est exécutée 5 fois : le tracé comporte 5 segments de même longueur.

  2. 2

    Somme des rotations : 5 × 72 = 360°, soit un tour complet.

  3. 3

    La figure se referme donc sur elle-même.

  4. 4

    Cinq côtés égaux et cinq angles égaux : c'est un pentagone régulier de côté 70.

Réponse : Un pentagone régulier de côté 70.

Rappel de cours : Polygone régulier à n côtés : répéter n fois, tourner de 360 ÷ n degrés.

Erreur fréquente : Ne pas vérifier que la somme des rotations fait 360° : sinon la figure resterait ouverte.

6

Exercice 6 — Variable dans une boucle

À maîtriser

Programme : « n prend la valeur 1 ; répéter 4 fois [ avancer de n × 30 ; tourner de 90° ; n prend la valeur n + 1 ] ».

Quelles sont les longueurs des quatre segments ?

Voir la correction

Correction détaillée

  1. 1

    Au départ, n = 1.

  2. 2

    Tour 1 : le lutin avance de 1 × 30 = 30.

    Puis n devient 2.

  3. 3

    Tour 2 : il avance de 2 × 30 = 60.

    Puis n devient 3.

  4. 4

    Tour 3 : il avance de 3 × 30 = 90.

    Puis n devient 4.

  5. 5

    Tour 4 : il avance de 4 × 30 = 120.

    Puis n devient 5, mais la boucle s'arrête.

  6. 6

    Les segments mesurent 30, 60, 90 et 120 : le tracé est une spirale carrée, pas un carré.

Réponse : 30, 60, 90 et 120 : c'est une spirale carrée.

Rappel de cours : Une variable modifiée dans la boucle fait changer le tracé à chaque tour.

Erreur fréquente : Croire que les quatre côtés sont égaux : n augmente à chaque passage.

7

Exercice 7 — Boucles imbriquées

À maîtriser

Combien de fois l'instruction « avancer » est-elle exécutée dans « répéter 3 fois [ répéter 5 fois [ avancer de 10 ; tourner de 72° ] ; tourner de 120° ] » ?

Que trace ce programme ?

Voir la correction

Correction détaillée

  1. 1

    La boucle intérieure exécute 5 fois « avancer », et elle est répétée 3 fois.

  2. 2

    Nombre total d'exécutions : 3 × 5 = 15.

  3. 3

    La boucle intérieure trace un pentagone régulier (car 5 × 72 = 360°).

  4. 4

    Entre deux pentagones, le lutin tourne de 120°.

  5. 5

    Comme 3 × 120 = 360°, les trois pentagones sont disposés en rosace autour du point de départ.

Réponse : 15 fois ; le programme trace 3 pentagones en rosace.

Rappel de cours : Boucles imbriquées : on MULTIPLIE les nombres de répétitions.

Erreur fréquente : Additionner 3 + 5 = 8 : les boucles se multiplient, elles ne s'additionnent pas.

8

Exercice 8 — Test avec deux conditions

À maîtriser

Programme : « Si le nombre est pair ET supérieur à 10, alors afficher "OK", sinon afficher "NON" ».

Que s'affiche-t-il pour 12, 7, 8 et 15 ?

Voir la correction

Correction détaillée

  1. 1

    Avec « ET », les DEUX conditions doivent être vraies en même temps.

  2. 2

    12 : il est pair ✔ et supérieur à 10 ✔ → « OK ».

  3. 3

    7 : il n'est pas pair ✘ → « NON » (inutile de tester la suite).

  4. 4

    8 : il est pair ✔ mais n'est pas supérieur à 10 ✘ → « NON ».

  5. 5

    15 : il n'est pas pair ✘ → « NON ».

  6. 6

    Seul 12 satisfait les deux conditions.

Réponse : 12 → « OK » ; 7, 8 et 15 → « NON ».

Rappel de cours : « ET » exige les deux conditions · « OU » se contente d'une seule.

Erreur fréquente : Traiter « ET » comme « OU » : 8 serait accepté à tort.

9

Exercice 9 — Écrire un programme de calcul

À maîtriser

Écris un programme qui demande un nombre, calcule le périmètre d'un carré ayant ce nombre pour côté, et affiche le résultat.

Voir la correction

Correction détaillée

  1. 1

    Étape 1 : demander la valeur du côté et la stocker dans une variable, appelons-la c.

  2. 2

    Étape 2 : créer une variable p et lui donner la valeur 4 × c, puisque le périmètre d'un carré vaut quatre fois le côté.

  3. 3

    Étape 3 : afficher p.

  4. 4

    Un algorithme se compose souvent de trois phases : entrée des données, calcul, affichage du résultat.

Réponse : « demander c ; p prend la valeur 4 × c ; afficher p ».

Rappel de cours : Une variable sert à retenir une donnée pour la réutiliser plus loin.

Erreur fréquente : Écrire « calculer le périmètre » comme instruction : il faut détailler le calcul.

10

Exercice 10 — Corriger un programme

À maîtriser

Un élève veut tracer un hexagone régulier et écrit « répéter 6 fois [ avancer de 50 ; tourner de 120° ] ».

Le tracé est faux.

Explique pourquoi et corrige.

Voir la correction

Correction détaillée

  1. 1

    Pour qu'une figure se referme, la somme des rotations doit valoir exactement 360°.

  2. 2

    Ici : 6 × 120 = 720°, soit DEUX tours complets.

  3. 3

    Le lutin repasse donc deux fois sur le même chemin : il trace un triangle parcouru deux fois, pas un hexagone.

  4. 4

    L'angle correct est 360 ÷ 6 = 60°.

  5. 5

    Programme corrigé : « répéter 6 fois [ avancer de 50 ; tourner de 60° ] ».

  6. 6

    Vérification : 6 × 60 = 360°. ✔

Réponse : 6 × 120 = 720° au lieu de 360° : il faut tourner de 60°.

Rappel de cours : Test rapide : nombre de répétitions × angle doit donner 360°.

Erreur fréquente : Utiliser l'angle intérieur de l'hexagone (120°) : le lutin tourne de l'angle EXTÉRIEUR.

11

Exercice 11 — Compter avec une condition

Type contrôle

Programme : « c prend la valeur 0 ; pour chaque nombre de la liste 3, 8, 12, 5, 20 : si le nombre est supérieur à 6, alors c prend la valeur c + 1 ».

Que vaut c à la fin ?

Voir la correction

Correction détaillée

  1. 1

    La variable c compte les nombres qui vérifient la condition.

    Au départ, c = 0.

  2. 2

    3 : 3 > 6 est faux, c reste 0.

  3. 3

    8 : 8 > 6 est vrai, c devient 1.

  4. 4

    12 : vrai, c devient 2.

  5. 5

    5 : faux, c reste 2.

  6. 6

    20 : vrai, c devient 3.

  7. 7

    À la fin, c = 3 : trois nombres de la liste dépassent 6.

Réponse : c = 3

Rappel de cours : Une variable qui s'incrémente sous condition est un « compteur ».

Erreur fréquente : Compter tous les nombres de la liste (5) : seuls ceux qui vérifient la condition sont comptés.

12

Exercice 12 — Calculer une somme

Type contrôle

Écris un programme qui calcule la somme des entiers de 1 à 10, puis détermine le résultat.

Voir la correction

Correction détaillée

  1. 1

    On a besoin de deux variables : s pour accumuler la somme, et i pour parcourir les entiers.

  2. 2

    Programme : « s prend la valeur 0 ; i prend la valeur 1 ; répéter 10 fois [ s prend la valeur s + i ; i prend la valeur i + 1 ] ; afficher s ».

  3. 3

    Suivons les premiers tours : s vaut successivement 1, puis 3, puis 6, puis 10…

  4. 4

    Le résultat final est 1+2+3+4+5+6+7+8+9+10.

  5. 5

    On peut le calculer astucieusement en regroupant : (1+10) + (2+9) + (3+8) + (4+7) + (5+6) = 11 × 5 = 55.

  6. 6

    Le programme affiche donc 55.

Réponse : Le programme affiche 55.

Rappel de cours : Il faut TOUJOURS initialiser l'accumulateur (s = 0) avant la boucle.

Erreur fréquente : Oublier d'incrémenter i : la boucle ajouterait dix fois le même nombre.

13

Exercice 13 — Le carré rempli

Type contrôle

Écris un programme qui trace 4 carrés de côté 40, alignés horizontalement et séparés de 20.

Voir la correction

Correction détaillée

  1. 1

    Le motif à répéter est : « tracer un carré, puis se déplacer sans tracer ».

  2. 2

    Le tracé d'un carré est lui-même une boucle : « répéter 4 fois [ avancer de 40 ; tourner de 90° ] ».

  3. 3

    Après ce tracé, le lutin est revenu à son point de départ, orienté comme au début.

  4. 4

    Déplacement : il faut franchir le côté du carré (40) plus l'espace (20), soit 60.

  5. 5

    On relève le stylo pour ne pas laisser de trace : « relever le stylo ; avancer de 60 ; baisser le stylo ».

  6. 6

    Programme complet : « baisser le stylo ; répéter 4 fois [ répéter 4 fois [ avancer de 40 ; tourner de 90° ] ; relever le stylo ; avancer de 60 ; baisser le stylo ] ».

Réponse : Boucle de 4 motifs, chacun composé du carré puis d'un déplacement de 60 stylo relevé.

Rappel de cours : « Relever le stylo » permet de déplacer le lutin sans laisser de trace.

Erreur fréquente : Avancer de 20 seulement : il faut aussi franchir le côté du carré précédent.

14

Exercice 14 — Programme de calcul et preuve

Type contrôle

Programme : « Choisis un nombre n ; a prend la valeur n + 5 ; b prend la valeur a × 2 ; c prend la valeur b - 10 ; afficher c ».

Applique-le à 3 et à 7, puis exprime c en fonction de n.

Voir la correction

Correction détaillée

  1. 1

    Avec n = 3 : a = 8, b = 16, c = 6.

  2. 2

    Avec n = 7 : a = 12, b = 24, c = 14.

  3. 3

    On observe que le résultat semble valoir le double du nombre choisi.

  4. 4

    Pour le prouver, on traduit chaque étape en calcul littéral.

  5. 5

    a = n + 5, puis b = 2(n+5) = 2n + 10, puis c = 2n + 10 - 10 = 2n.

  6. 6

    Le programme affiche donc toujours le double du nombre choisi.

Réponse : 3 donne 6, 7 donne 14 ; en général c = 2n.

Rappel de cours : Le calcul littéral PROUVE ce que les exemples laissent seulement deviner.

Erreur fréquente : Se contenter de deux exemples pour affirmer une règle générale.

15

Exercice 15 — Trouver l'erreur

Type contrôle

Programme censé calculer la moyenne de 12, 15 et 9 : « s prend la valeur 12 ; s prend la valeur s + 15 ; s prend la valeur s + 9 ; m prend la valeur s ÷ 2 ; afficher m ».

Trouve l'erreur et corrige.

Voir la correction

Correction détaillée

  1. 1

    Suivons le programme : s vaut 12, puis 27, puis 36.

    La somme est correcte.

  2. 2

    Ensuite, m = 36 ÷ 2 = 18.

  3. 3

    Or une moyenne doit être comprise entre la plus petite valeur (9) et la plus grande (15) : 18 est impossible.

  4. 4

    L'erreur est dans le diviseur : il y a TROIS notes, pas deux.

  5. 5

    Correction : « m prend la valeur s ÷ 3 », ce qui donne 36 ÷ 3 = 12.

  6. 6

    Vérification : 12 est bien compris entre 9 et 15. ✔

Réponse : On divise par 2 au lieu de 3 : la moyenne correcte est 36 ÷ 3 = 12.

Rappel de cours : Un contrôle de vraisemblance (la moyenne est entre le min et le max) détecte l'erreur immédiatement.

Erreur fréquente : Faire confiance au programme sans vérifier la plausibilité du résultat.

16

Exercice 16 — Le jeu du plus ou moins

Approfondissement / défi

Un programme cache un nombre entre 1 et 100.

À chaque proposition, il répond « trop grand », « trop petit » ou « gagné ».

Quelle stratégie permet de trouver le nombre en un minimum d'essais ?

Combien d'essais suffisent au pire ?

Voir la correction

Correction détaillée

  1. 1

    La meilleure stratégie consiste à proposer à chaque fois le MILIEU de l'intervalle encore possible.

  2. 2

    Premier essai : 50.

    Quelle que soit la réponse, il ne reste au plus que 50 nombres possibles.

  3. 3

    Deuxième essai : le milieu du nouvel intervalle, par exemple 25 ou 75.

    Il reste au plus 25 nombres.

  4. 4

    À chaque essai, on divise environ par 2 le nombre de possibilités : 100 → 50 → 25 → 13 → 7 → 4 → 2 → 1.

  5. 5

    En comptant les étapes, 7 essais suffisent au pire pour isoler le nombre.

  6. 6

    Cette méthode s'appelle la recherche par dichotomie : elle est bien plus efficace que d'essayer les nombres un par un, ce qui pourrait demander 100 essais.

Réponse : Proposer à chaque fois le milieu de l'intervalle (dichotomie) : 7 essais suffisent au pire.

Rappel de cours : Diviser le problème en deux à chaque étape est une stratégie très efficace en algorithmique.

Erreur fréquente : Essayer les nombres dans l'ordre : c'est correct mais très lent.

17

Exercice 17 — L'escalier programmé

Approfondissement / défi

Le lutin exécute : « répéter 5 fois [ avancer de 25 ; tourner de 90° à gauche ; avancer de 25 ; tourner de 90° à droite ] ».

Décris la figure et calcule la distance totale parcourue ainsi que le déplacement horizontal total.

Voir la correction

Correction détaillée

  1. 1

    À chaque tour de boucle, le lutin fait un pas horizontal puis un pas vertical.

  2. 2

    Les deux rotations (une à gauche, une à droite) s'annulent : il retrouve son orientation de départ à chaque tour.

  3. 3

    Le motif est donc une « marche » d'escalier de 25 de large et 25 de haut.

  4. 4

    Répété 5 fois, cela dessine un escalier de 5 marches.

  5. 5

    Distance totale : 5 × (25 + 25) = 5 × 50 = 250.

  6. 6

    Déplacement horizontal : seuls les 5 segments horizontaux comptent, soit 5 × 25 = 125.

    Le déplacement vertical vaut également 125.

Réponse : Un escalier de 5 marches · distance parcourue 250 · déplacement horizontal 125.

Rappel de cours : Deux rotations opposées de même mesure ramènent le lutin à sa direction initiale.

Erreur fréquente : Confondre la distance parcourue (250) et le déplacement horizontal (125).

18

Exercice 18 — Programme avec conditions multiples

Approfondissement / défi

Programme de notation : « Si la note est supérieure ou égale à 16, afficher "TB" ; sinon si elle est supérieure ou égale à 14, afficher "B" ; sinon si elle est supérieure ou égale à 10, afficher "Passable" ; sinon afficher "Insuffisant" ».

Que s'affiche-t-il pour 18, 14, 10 et 9,5 ?

Voir la correction

Correction détaillée

  1. 1

    Les conditions sont testées DANS L'ORDRE, et on s'arrête à la première qui est vraie.

  2. 2

    18 : la première condition (18 ≥ 16) est vraie → « TB ».

  3. 3

    14 : 14 ≥ 16 est faux ; 14 ≥ 14 est vrai → « B ».

  4. 4

    10 : les deux premières sont fausses ; 10 ≥ 10 est vrai → « Passable ».

  5. 5

    9,5 : les trois conditions sont fausses → « Insuffisant ».

  6. 6

    Remarque importante : l'ordre des tests est essentiel.

    Si on testait ≥ 10 en premier, la note 18 afficherait « Passable ».

Réponse : 18 → TB · 14 → B · 10 → Passable · 9,5 → Insuffisant.

Rappel de cours : Dans une cascade de « sinon si », on s'arrête à la première condition vraie : l'ordre est décisif.

Erreur fréquente : Traiter les cas limites (14 et 10) au mauvais niveau : « supérieur ou égal » les inclut.

19

Exercice 19 — Écrire un test de divisibilité

Approfondissement / défi

Écris un programme qui demande un nombre et affiche « multiple de 3 » ou « pas multiple de 3 ».

Applique-le mentalement à 27 et à 41.

Voir la correction

Correction détaillée

  1. 1

    Un nombre est multiple de 3 si le reste de sa division par 3 vaut 0.

  2. 2

    Programme : « demander n ; si le reste de n divisé par 3 est égal à 0, alors afficher "multiple de 3", sinon afficher "pas multiple de 3" ».

  3. 3

    Pour 27 : 27 = 3 × 9, le reste vaut 0 → « multiple de 3 ».

  4. 4

    Pour 41 : 41 = 3 × 13 + 2, le reste vaut 2 → « pas multiple de 3 ».

  5. 5

    On peut vérifier avec le critère de divisibilité : 2+7 = 9, multiple de 3 ✔ ; 4+1 = 5, non multiple de 3 ✔.

Réponse : Tester si le reste de la division par 3 vaut 0 · 27 → multiple · 41 → pas multiple.

Rappel de cours : Le bloc « reste de la division » (modulo) est l'outil standard pour tester une divisibilité.

Erreur fréquente : Tester si le QUOTIENT est entier sans regarder le reste : le quotient entier existe toujours.

20

Exercice 20 — Prédire une figure complexe

Approfondissement / défi

Programme : « c prend la valeur 20 ; répéter 6 fois [ répéter 3 fois [ avancer de c ; tourner de 120° ] ; tourner de 60° ; c prend la valeur c + 10 ] ».

Décris ce qui est tracé.

Voir la correction

Correction détaillée

  1. 1

    La boucle intérieure trace un triangle équilatéral : 3 côtés et 3 × 120 = 360°.

  2. 2

    Le côté de ce triangle vaut c, qui change à chaque tour de la boucle extérieure.

  3. 3

    Tour 1 : triangle de côté 20.

    Puis rotation de 60°, et c devient 30.

  4. 4

    Tour 2 : triangle de côté 30, etc.

  5. 5

    Les côtés successifs valent 20, 30, 40, 50, 60 et 70.

  6. 6

    Entre deux triangles, le lutin pivote de 60°, et 6 × 60 = 360° : les six triangles forment une rosace complète.

  7. 7

    Le résultat est une rosace de 6 triangles équilatéraux de tailles croissantes, disposés autour du point de départ.

Réponse : Une rosace de 6 triangles équilatéraux de côtés 20, 30, 40, 50, 60 et 70.

Rappel de cours : Boucle intérieure = le motif · boucle extérieure = sa répétition et sa transformation.

Erreur fréquente : Croire que les six triangles sont identiques : la variable c grandit à chaque tour.

Autres exercices corrigés en Cinquième

Tous les chapitres →

Besoin de revoir le cours ou de t'entraîner autrement ?