Chargement…
Chargement…
L'algorithmique est un thème transversal : au brevet, les exercices d'algorithmique peuvent apparaître dans n'importe quel chapitre. Ce cours donne les outils pour lire, modifier et écrire des programmes en pseudo-code et en Scratch.
Une variable est un espace mémoire qui porte un nom et qui stocke une valeur. On peut l'imaginer comme une boîte étiquetée dans laquelle on range une information.
En 3ème, on distingue trois types de variables :
| Type | Description | Exemple |
|---|---|---|
| Nombre | Entier ou décimal | ou |
| Texte (chaîne de caractères) | Texte entre guillemets | |
| Booléen | Vrai ou Faux |
Affecter une variable, c'est lui donner une valeur. On note cela avec une flèche en pseudo-code.
⚠️ Piège fondamental : l'instruction n'est pas une équation ! Elle signifie : « prends l'ancienne valeur de score, ajoute , et range le résultat dans score ».
Exemple pas à pas :
a ← 5
b ← 3
a ← a + b
| Instruction | Valeur de | Valeur de |
|---|---|---|
| — | ||
Après exécution : et .
Tracer l'exécution d'un programme, c'est suivre pas à pas l'évolution des variables dans un tableau. C'est un exercice classique du brevet.
Exemple :
x ← 2
y ← 5
x ← x × y
y ← y - 1
x ← x + y
| Instruction | ||
|---|---|---|
| — | ||
Résultat final : , .
Si [condition] Alors
[instructions]
Sinon
[instructions]
Fin Si
La condition est un test qui renvoie Vrai ou Faux (exemples : , , ).
En 3ème, on combine plusieurs tests grâce aux opérateurs logiques :
| Opérateur | Signification | Vrai quand... |
|---|---|---|
| ET | Les deux conditions sont vraies | ET → est entre et |
| OU | Au moins une condition est vraie | OU → est négatif ou supérieur à |
| NON | Inverse la condition | NON() → est différent de |
| ET | OU | NON | ||
|---|---|---|---|---|
| Vrai | Vrai | Vrai | Vrai | Faux |
| Vrai | Faux | Faux | Vrai | Faux |
| Faux | Vrai | Faux | Vrai | Vrai |
| Faux | Faux | Faux | Faux | Vrai |
💡 Moyen mnémotechnique :
Que fait ce programme pour ?
Si (moyenne ≥ 12) ET (moyenne ≤ 20) Alors
Afficher "Mention obtenue !"
Sinon
Afficher "Pas de mention"
Fin Si
Et pour ?
Répéter n fois
[instructions]
Fin Répéter
On sait à l'avance combien de fois on va répéter. C'est le cas le plus simple.
Tant que [condition] Faire
[instructions]
Fin Tant que
On répète tant qu'une condition est vraie, sans savoir à l'avance combien de fois.
Fonctionnement :
⚠️ Danger : la boucle infinie ! Si la variable testée n'évolue jamais, la condition reste toujours vraie et le programme tourne indéfiniment. Il faut toujours s'assurer que quelque chose change à chaque tour.
Trouver le plus petit entier tel que .
n ← 1
Tant que 2^n ≤ 1000 Faire
n ← n + 1
Fin Tant que
Afficher n
| Tour | Condition ? | ||
|---|---|---|---|
| 1 | Vrai → on continue | ||
| 2 | Vrai → on continue | ||
| 3 | Vrai → on continue | ||
| ... | ... | ... | ... |
| 9 | Vrai → on continue | ||
| 10 | Faux → on sort |
Le programme affiche car . ✅
| Boucle bornée | Boucle conditionnelle | |
|---|---|---|
| Quand l'utiliser | On connaît le nombre de répétitions | On ne le connaît pas |
| Pseudo-code | « Répéter fois » | « Tant que [condition] Faire » |
| Scratch | « Répéter () fois » | « Répéter jusqu'à [condition] » |
| Risque | Aucun | Boucle infinie si la condition ne change jamais |
⚠️ Attention Scratch : le bloc Scratch dit « Répéter jusqu'à » (= on sort quand la condition devient vraie), alors que le pseudo-code dit « Tant que » (= on reste tant que la condition est vraie). C'est l'inverse ! Il faut inverser la condition.
Tout programme bien structuré suit le même schéma :
| Phase | Ce qu'on fait | Exemple |
|---|---|---|
| 1. Initialisation | Créer et donner une valeur de départ aux variables | , |
| 2. Traitement | Calculs, boucles, conditions | Boucle de calcul |
| 3. Résultat | Afficher ou retourner le résultat | Afficher |
« Choisir un nombre, le multiplier par , ajouter , multiplier par le nombre de départ. »
En pseudo-code :
Demander x
a ← x × 3
a ← a + 5
a ← a × x
Afficher a
Tester pour :
En écriture algébrique : Le programme calcule . C'est le lien avec le calcul littéral.
secret ← nombre aléatoire entre 1 et 100
essai ← 0
Tant que essai ≠ secret Faire
Demander "Quel est le nombre ?" → essai
Si essai > secret Alors
Afficher "Trop grand !"
Sinon Si essai < secret Alors
Afficher "Trop petit !"
Fin Tant que
Afficher "Bravo, trouvé !"
Ce programme utilise toutes les notions du chapitre :
compteur6 ← 0
Répéter 1000 fois
dé ← nombre aléatoire entre 1 et 6
Si dé = 6 Alors
compteur6 ← compteur6 + 1
Fin Si
Fin Répéter
fréquence ← compteur6 / 1000
Afficher fréquence
Ce programme simule lancers de dé et calcule la fréquence d'apparition du . On s'attend à obtenir environ (stabilisation des fréquences, chapitre 9).
Au brevet, les exercices peuvent utiliser du pseudo-code ou des blocs Scratch. Il faut savoir passer de l'un à l'autre.
| Pseudo-code | Scratch (bloc) |
|---|---|
| « mettre à » | |
| « ajouter à » | |
| Si [condition] Alors ... Sinon ... | « si <condition> alors ... sinon ... » |
| Répéter fois | « répéter () fois » |
| Tant que [condition] Faire | « répéter jusqu'à <NON condition> » ⚠️ |
| Afficher | « dire » |
| Demander → | « demander [...] et attendre », = « réponse » |
| nombre aléatoire entre et | « nombre aléatoire entre () et () » |
⚠️ Point crucial : « Tant que » en pseudo-code = « Répéter jusqu'à » en Scratch. La condition est inversée !
Variable = boîte mémoire. L'affectation n'est pas une équation : prend l'ancienne valeur et ajoute .
Conditions composées : ET (les deux vraies), OU (au moins une vraie), NON (inverse).
Boucle « Tant que » : on répète tant que la condition est vraie. Attention à la boucle infinie !
Structure d'un programme : initialisation → traitement → résultat.
Trace d'exécution : suivre pas à pas l'évolution des variables dans un tableau.
Scratch ↔ pseudo-code : le « Répéter jusqu'à » de Scratch inverse la condition du « Tant que ».
Lien avec les maths : un programme de calcul s'écrit en expression algébrique (calcul littéral), une simulation de dé estime une probabilité (stabilisation des fréquences).
Tuteur qui t'explique pas à pas, quiz pour t'entraîner, flashcards pour mémoriser. Gratuit.
Créer mon compte gratuitement→