Algorithmique et Scratch 5ème : 14 exercices corrigés

Ces exercices corrigés d’algorithmique et Scratch en 5ème apprennent à suivre une séquence, prévoir une sortie, modifier un paramètre, utiliser une variable et comprendre une boucle « répéter ». Chaque script est transcrit en texte afin de rester lisible sans capture d’écran. Le cours d’algorithmique et Scratch en 5ème fournit le vocabulaire et les méthodes nécessaires.

La progression alterne calcul, déplacement, dessin et débogage : on ne se contente pas de donner une valeur finale, on identifie l’état du programme après chaque bloc. Cette série complète le parcours de mathématiques de 5ème et réemploie les tableaux et formules du chapitre sur les fonctions en 5ème.

Lire une séquence et suivre l’état d’une variable

Les premiers exercices demandent de respecter l’ordre des blocs. Une valeur modifiée devient la valeur de départ du bloc suivant.

Exercice 1 : Prévoir la sortie d’un programme

Facile

Le programme demande un nombre, ajoute 77, puis affiche le résultat. L’utilisateur saisit 1212.

  1. Quelle valeur est mémorisée juste après la saisie ?
  2. Quel message numérique le programme affiche-t-il ?
Indication

Écrivez les valeurs successives dans une petite colonne : entrée, puis résultat après l’addition.

Voir le corrigé

Après la saisie, la variable contient 1212. Le bloc suivant calcule 12+7=1912+7=19. Le programme affiche donc 19. L’ordre est essentiel : l’addition utilise la valeur effectivement saisie.

Exercice 2 : Suivre deux modifications successives

Facile

La variable score est mise à 44. Le script ajoute 66 à score, puis multiplie score par 33.

  1. Donner la valeur après le bloc « ajouter 66 ».
  2. Calculer la valeur finale.
  3. Expliquer pourquoi 4+6×34+6\times3 ne traduit pas ce script.
Indication

Les blocs agissent l’un après l’autre. Des parenthèses peuvent rendre cette chronologie visible dans une expression unique.

Voir le corrigé
  1. Après l’ajout, le score vaut 4+6=104+6=10.
  2. Le second bloc part de 1010, donc le score final est 10×3=3010\times3=30.
  3. L’expression correcte est (4+6)×3(4+6)\times3. Sans parenthèses, 4+6×3=224+6\times3=22, car la multiplication serait prioritaire.

Exercice 3 : Associer trois entrées à leurs sorties

Facile

Un script calcule le double du nombre saisi, puis retranche 55. On note xx l’entrée et yy la sortie.

  1. Calculer yy pour x=3x=3.
  2. Calculer yy pour x=8x=8.
  3. Calculer yy pour x=0x=0.
  4. Écrire une formule donnant yy en fonction de xx.
Indication

« Doubler » signifie multiplier l’entrée par 22, avant d’enlever 55.

Voir le corrigé

La règle est y=2x5y=2x-5. Ainsi, pour x=3x=3, y=65=1y=6-5=1 ; pour x=8x=8, y=165=11y=16-5=11 ; pour x=0x=0, y=05=5y=0-5=-5. La formule résume tous les essais sans modifier le programme.

Exercice 4 : Retrouver l’entrée

Moyen

Le programme ajoute 99 au nombre choisi et affiche 2323.

  1. Quel nombre a été choisi au départ ? Justifier en remontant le programme.
Indication

Pour remonter une addition, effectuez l’opération inverse sur la sortie.

Voir le corrigé

Le nombre initial vaut 239=1423-9=14. Vérification : si le programme reçoit 1414, il calcule 14+9=2314+9=23, ce qui correspond bien à la sortie annoncée.

Comprendre les boucles à nombre fixé

Une boucle exécute plusieurs fois la totalité de son contenu. Il faut distinguer le nombre de tours, l’effet d’un tour et l’effet cumulé.

Exercice 5 : Compter les blocs réellement exécutés

Facile

Une boucle « répéter 66 fois » contient successivement : avancer de 1515 pas ; jouer un son ; tourner de 2020^\circ.

  1. Combien de fois le lutin avance-t-il ?
  2. Quelle distance totale parcourt-il ?
  3. Combien de sons sont joués ?
  4. Quelle rotation totale est effectuée ?
  5. Le lutin retrouve-t-il son orientation initiale ?
Indication

Chaque bloc intérieur est exécuté six fois. Une orientation est retrouvée après un multiple entier de 360360^\circ.

Voir le corrigé
  1. Le lutin avance 66 fois.
  2. La distance vaut 6×15=906\times15=90 pas.
  3. Le son est joué 66 fois.
  4. La rotation totale vaut 6×20=1206\times20=120^\circ.
  5. 120120^\circ n’est pas un tour complet ; l’orientation finale diffère donc de l’orientation initiale.

Exercice 6 : Comparer une boucle et une longue séquence

Moyen

Le script A répète cinq fois « avancer de 1212 pas ». Le script B contient cinq blocs identiques « avancer de 1212 pas » écrits l’un après l’autre.

  1. Les deux scripts produisent-ils le même déplacement ?
  2. Donner un avantage concret du script A.
Indication

Comparez d’abord l’effet obtenu, puis la facilité avec laquelle on peut modifier le programme.

Voir le corrigé

Chaque script exécute cinq avancées de 1212 pas, soit 5×12=605\times12=60 pas : le déplacement est identique. Le script A est plus court et plus facile à modifier ; pour obtenir huit avancées, il suffit de remplacer 55 par 88.

Exercice 7 : Faire évoluer une variable dans une boucle

Moyen

On met la variable nn à 22, puis on répète quatre fois le bloc « ajouter 33 à nn ».

  1. Recopier les quatre valeurs prises par nn après chaque tour.
  2. Donner la valeur finale sans détailler les tours, à l’aide d’un seul calcul.
  3. Combien de tours faudrait-il pour atteindre n=20n=20 ?
Indication

Après kk tours, l’ajout total est 3k3k. Pour la dernière question, résolvez 2+3k=202+3k=20.

Voir le corrigé

Les valeurs sont successivement 55, 88, 1111 et 1414. En un calcul, n=2+4×3=14n=2+4\times3=14. Pour atteindre 2020, il faut ajouter 1818, soit 18÷3=618\div3=6 tours. La vérification 2+6×3=202+6\times3=20 confirme le résultat.

Programmer des déplacements et des figures

Les rotations de Scratch sont des angles extérieurs. Pour fermer une figure régulière, la somme des rotations vaut un tour complet.

Exercice 8 : Décrire un trajet dans le plan

Moyen

Le lutin est au point (0;0)(0;0), orienté vers la droite. Il avance de 4040 pas, tourne à gauche de 9090^\circ, puis avance de 2525 pas.

  1. Donner ses coordonnées finales en prenant un pas pour une unité.
  2. Décrire la forme du trajet et l’angle formé par les deux segments.
  3. Indiquer les coordonnées obtenues si le second déplacement vaut 4040 pas.
  4. Le trajet revient-il au point de départ ? Justifier.
Indication

Vers la droite, seule l’abscisse augmente ; après un quart de tour à gauche, le lutin monte.

Voir le corrigé

Après le premier déplacement, le lutin est en (40;0)(40;0), puis en (40;25)(40;25). Le trajet est une ligne brisée formant un angle droit. Avec un second déplacement de 4040 pas, le point final serait (40;40)(40;40). Dans les deux cas, il ne revient pas à l’origine : aucun déplacement ne compense les 4040 pas vers la droite.

Exercice 9 : Compléter le script d’un carré

Moyen

On veut tracer un carré de côté 5555 pas avec une boucle contenant « avancer de 5555 pas ; tourner à droite de … degrés ».

  1. Donner le nombre de répétitions.
  2. Donner l’angle manquant.
Indication

Un carré a quatre côtés et chaque changement de direction correspond à un quart de tour.

Voir le corrigé

Il faut répéter la séquence 44 fois. L’angle de rotation est 360÷4=90360^\circ\div4=90^\circ. La boucle complète est donc : répéter 44 fois, avancer de 5555, tourner de 9090^\circ.

Exercice 10 : Construire un hexagone régulier

Difficile

Une élève propose : « répéter 66 fois : avancer de 3535 pas ; tourner de 6060^\circ ».

  1. Expliquer pourquoi il y a six côtés.
  2. Vérifier que les rotations produisent un tour complet.
  3. Calculer le périmètre de la figure en pas.
  4. Prévoir l’effet d’une rotation de 5050^\circ à la place de 6060^\circ.
  5. Donner la seule valeur de rotation qui ferme un hexagone régulier avec six répétitions.
Indication

Multipliez le nombre de répétitions par l’angle de rotation. Une figure régulière fermée exige 360360^\circ.

Voir le corrigé
  1. Chaque tour dessine un segment, donc six tours donnent six côtés.
  2. 6×60=3606\times60^\circ=360^\circ : l’orientation initiale est retrouvée.
  3. Le périmètre vaut 6×35=2106\times35=210 pas.
  4. Avec 5050^\circ, la rotation totale serait 300300^\circ ; le tracé ne se refermerait pas comme un hexagone régulier.
  5. L’angle recherché est nécessairement 360÷6=60360^\circ\div6=60^\circ.

Exercice 11 : Modifier une figure sans réécrire le programme

Moyen

Un script trace un triangle équilatéral en répétant trois fois « avancer de cc pas ; tourner de 120120^\circ ». On remplace c=40c=40 par c=65c=65.

  1. Quelles propriétés du dessin changent et lesquelles restent identiques ?
Indication

Le paramètre cc règle les longueurs, tandis que le nombre de tours et la rotation règlent la nature de la figure.

Voir le corrigé

Le triangle reste équilatéral : les trois côtés sont toujours produits par la même instruction et les rotations restent égales à 120120^\circ. Seule sa taille change. Son côté passe de 4040 à 6565 pas et son périmètre passe de 120120 à 195195 pas.

Déboguer, comparer et concevoir un algorithme

Déboguer consiste à localiser le premier bloc qui rend le résultat différent de l’objectif, puis à tester une correction précise.

Exercice 12 : Réparer un rectangle incomplet

Difficile

Pour tracer un rectangle de longueur 8080 et de largeur 3535, un script répète deux fois : avancer de 8080 ; tourner de 9090^\circ ; avancer de 3535.

  1. Expliquer pourquoi le tracé ne revient pas dans la direction attendue.
  2. Ajouter le bloc manquant dans la boucle.
  3. Vérifier la rotation totale du script corrigé.
Indication

Un rectangle exige une rotation après chacun de ses quatre côtés, y compris après le côté de largeur.

Voir le corrigé

La boucle oublie de tourner après l’avancée de 3535. Il faut ajouter « tourner de 9090^\circ » à la fin du contenu répété. Une répétition contient alors deux rotations ; deux répétitions en produisent quatre, soit 4×90=3604\times90^\circ=360^\circ. Le lutin retrouve sa position et son orientation initiales.

Exercice 13 : Choisir entre deux programmes de calcul

Difficile

Programme A : choisir xx, ajouter 44, puis doubler. Programme B : choisir xx, doubler, puis ajouter 88.

  1. Calculer les sorties des deux programmes pour x=3x=3.
  2. Écrire une expression pour chaque programme.
  3. Comparer les sorties pour x=2x=-2.
  4. Les deux programmes semblent-ils toujours équivalents ?
Indication

Traduisez A avec des parenthèses, puis utilisez la distributivité seulement pour comparer les expressions.

Voir le corrigé

Pour x=3x=3, A donne (3+4)×2=14(3+4)\times2=14 et B donne 2×3+8=142\times3+8=14. Les expressions sont 2(x+4)2(x+4) et 2x+82x+8. Pour x=2x=-2, elles donnent toutes deux 44. Or 2(x+4)=2x+82(x+4)=2x+8 par distributivité : les programmes sont équivalents pour toute entrée.

Exercice 14 : Concevoir une rosace de carrés

Difficile

On possède un bloc personnel carré qui trace un carré puis revient exactement au point et à l’orientation de départ. On veut répartir 1212 carrés autour de ce point.

  1. Calculer la rotation à effectuer entre deux carrés.
  2. Écrire en français la boucle extérieure complète.
Indication

Les douze orientations doivent partager un tour de 360360^\circ en parts égales.

Voir le corrigé

La rotation entre deux carrés vaut 360÷12=30360^\circ\div12=30^\circ. L’algorithme est : « répéter 1212 fois : exécuter le bloc carré ; tourner de 3030^\circ ». Le retour assuré par le bloc personnel permet à chaque nouveau carré de partir du même point.