Algorithmique / Scratch

Boucles (répéter / répéter jusqu’à) • conditions (si / alors / sinon) • variables • simulations numériques • lecture/écriture d’algorithmes • débogage — programme de 4e.

Cours premium — Algorithmique / Scratch
Boucles • conditions • variables • simulations : comprendre, écrire, tester et corriger un algorithme. Exemples guidés « type Scratch » + méthodes.
Algo Boucles Conditions Variables Débogage
1) Vocabulaire essentiel
Algorithme
Suite d’instructions pour résoudre un problème.
Instruction
Une action : « mettre… », « ajouter… », « afficher… »
Variable
Boîte qui contient une valeur (nombre, texte…).
Condition
Test vrai/faux : « si … alors … sinon … »
Boucle
Répéter plusieurs fois (ou jusqu’à une condition).
Débogage
Trouver et corriger les erreurs (« bugs »).
2) Variables : « mettre » et « changer »
Deux actions différentes
  • Mettre une variable à une valeur : on remplace l’ancienne valeur.
  • Changer une variable : on ajoute (ou on enlève) une quantité.
Exemple : si \(x=10\), alors « mettre \(x\) à 3 » donne \(x=3\), et « changer \(x\) de 3 » donne \(x=13\).
Blocs Scratch (schéma)
Illustration : « mettre » vs « changer ».
mettre x à 3 → remplace la valeur (x devient 3) changer x de 3 → ajoute 3 (x devient x+3)
Piège
Une variable doit souvent être initialisée (ex : mettre \(S\) à 0) avant de faire une somme dans une boucle.
3) Conditions : « si … alors … sinon … »
Principe
Une condition est un test vrai/faux. Si elle est vraie, on exécute une suite d’actions, sinon on en exécute une autre (ou rien).
Exemples de tests : \[ x>10,\quad x=0,\quad x\le 5,\quad \text{« x est pair ? »} \]
Bloc Scratch (schéma)
Illustration : « si … alors … sinon … ».
si x > 10 alors dire "grand" sinon dire "pas grand" → un seul chemin est exécuté
Pièges
  • Oublier le cas « égalité » : \(x>0\) n’inclut pas \(x=0\).
  • Condition jamais vraie (test trop strict) → résultat inattendu.
4) Boucles : répéter, répéter jusqu’à
Répéter \(n\) fois
On connaît le nombre d’itérations.
Exemple : afficher les 10 premiers nombres → répéter 10 fois.
Répéter jusqu’à (condition)
On s’arrête quand la condition devient vraie.
Exemple : répéter jusqu’à \(x\ge 100\).
Blocs Scratch (schéma)
Illustration : « répéter n fois » et « répéter jusqu’à ».
répéter 10 fois dire x ; changer x de 1 → itérations connues répéter jusqu’à x > 100 changer x de 5 → s’arrête quand la condition est vraie Piège : si x ne change pas, la boucle peut être infinie.
Pièges
  • Boucle infinie : la variable testée ne change pas → la condition ne devient jamais vraie.
  • Boucle mal placée : on met « mettre \(S\) à 0 » dans la boucle → le total est réinitialisé à chaque tour.
5) Simulations : exemples guidés
Exemple 1 — Épargne hebdomadaire
On met \(7\) euros de côté chaque semaine. On part de \(S=0\). Combien après 12 semaines ?
Idée Scratch
Initialiser \(S=0\). Répéter 12 fois : changer \(S\) de 7. Afficher \(S\).
\[ S = 12\times 7 = 84 \]
Exemple 2 — « Jusqu’à dépasser 100 »
On part de \(x=0\). À chaque étape, on ajoute 9. Combien d’étapes pour dépasser 100 ?
Correction
On cherche le plus petit \(n\) tel que \(9n>100\). Or \(9\times 11=99\) et \(9\times 12=108\). Donc 12 étapes.
6) Débogage : méthode rapide
  1. Relire l’objectif : qu’est-ce que le programme doit afficher ?
  2. Vérifier l’initialisation : variables mises à 0 (ou valeur de départ).
  3. Tester à la main 2 ou 3 tours : valeurs à chaque itération.
  4. Contrôler la condition : peut-elle devenir vraie ?
  5. Comparer “mettre” / “changer” : écrasement ou accumulation ?
Bugs les plus fréquents
  • Variable non initialisée
  • Condition jamais vraie (test trop strict)
  • Boucle infinie (« répéter jusqu’à » sans mise à jour de la variable)
  • Réinitialisation dans la boucle (boucle mal placée)