Planning & pseudocode · Planification & pseudocode
Plan before you code
- An algorithm is a clear list of steps that solves a problem.
- Good programmers plan the steps before they type code.
- A plan helps you spot mistakes early and explain your idea.
Planifier avant de coder
- Un algorithme est une liste claire d'étapes qui résout un problème.
- Les bons programmeurs planifient les étapes avant de taper du code.
- Un plan vous aide à repérer les erreurs tôt et à expliquer votre idée.
Decomposition
- Decomposition means breaking a big problem into smaller parts.
- Solve each small part on its own.
- Small parts are easier to write, test, and fix.
Décomposition
- La décomposition signifie diviser un gros problème en petites parties.
- Résolvez chaque petite partie individuellement.
- Les petites parties sont plus faciles à écrire, tester et corriger.
Abstraction
- Abstraction means keeping only the details that matter.
- You hide the parts you do not need right now.
- A map is an abstraction: it shows roads, not every tree.
Abstraction
- L'abstraction signifie garder seulement les détails qui comptent.
- Vous masquez les parties dont vous n'avez pas besoin maintenant.
- Une carte est une abstraction : elle montre des routes, pas tous les arbres.
Structured English
- Structured English writes the steps as plain numbered sentences.
- It is not real code, so anyone can read it.
Anglais structuré
- L'anglais structuré écrit les étapes comme des phrases numérotées simples.
- Ce n'est pas vrai code, donc tout le monde peut le lire.
1. Read the number.
2. If it can be divided by 2 with no remainder, it is even.
3. Otherwise it is odd.
4. Output the answer.
Flowcharts
- A flowchart draws the steps as boxes joined by arrows.
- A rectangle is a step; a diamond is a decision (yes / no).
Diagrammes de flux
- Un diagramme de flux dessine les étapes comme des boîtes reliées par des flèches.
- Un rectangle est une étape ; un losange est une décision (oui / non).
( start )
|
[ read n ]
|
< n > 0 ? > --no--> [ output "not positive" ]
| yes
[ output "positive" ]
|
( end )
Three building blocks
- Sequence: steps run one after another.
- Selection:
if/elif/elsechooses a path. - Iteration:
for/whilerepeats steps.
Trois blocs de construction
- Séquence : les étapes s'exécutent les unes après les autres.
- Sélection :
if/elif/elsechoisit un chemin. - Itération :
for/whilerépète les étapes.
In Cambridge pseudocode
- The same plan in pseudocode, then in Python below.
En pseudocode Cambridge
- Le même plan en pseudocode, puis en Python ci-dessous.
Total ← 0
FOR I ← 0 TO LENGTH(Numbers) - 1
Total ← Total + Numbers[I]
NEXT I
Average ← Total / LENGTH(Numbers)
OUTPUT Average
numbers = [4, 8, 6]
total = 0
for n in numbers:
total = total + n
average = total / len(numbers)
print(average)
Common mistakes
- Pseudocode is a plan in plain words — it does not have to run.
- Break the problem into small steps before you write any code.
- Plan the input → process → output.
Erreurs courantes
- Le pseudocode est un plan en mots simples — il n'a pas besoin de s'exécuter.
- Divisez le problème en petites étapes avant d'écrire du code.
- Planifiez l'entrée → traitement → sortie.
Now you try
- Each task gives you a plan in words. Turn it into Python.
- Press Check answer to test your code.
À vous maintenant
- Chaque tâche vous donne un plan en mots. Transformez-le en Python.
- Appuyez sur Vérifier la réponse pour tester votre code.
An algorithm is ordered steps · Un algorithme est une série d'étapes ordonnées
Pseudocode is just the steps in order, before you write real code. · Le pseudocode n'est que les étapes dans l'ordre, avant d'écrire du vrai code.
Follow this plan: read a whole number; if it divides by 2 with no remainder print Even, otherwise print Odd. For input 4, print Even. · Suivez ce plan : lisez un nombre entier ; s'il se divise par 2 sans reste, imprimez Even, sinon imprimez Odd. Pour l'entrée 4, imprimez Even.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Follow this plan: read a number N; add up every whole number from 1 to · à N; print the total. For input 5, print 15. · Suivez ce plan : lisez un nombre N ; additionnez tous les nombres entiers de 1 à N ; imprimez le total. Pour l'entrée 5, imprimez 15.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Decompose this into a function. Write count_vowels(word) that returns · rendements how many letters of word are vowels (a e i o u, lowercase). · Décomposez cela en une fonction. Écrivez count_vowels(word) qui renvoie combien de lettres de word sont des voyelles (a e i o u, minuscules).
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.
Follow this plan for every number from 1 to · à 15: if it divides by both 3 and · et 5, print FizzBuzz; else if it divides by 3, print Fizz; else if it divides by 5, print Buzz; otherwise print the number. · Suivez ce plan pour chaque nombre de 1 à 15 : s'il se divise à la fois par 3 et 5, imprimez FizzBuzz ; sinon s'il se divise par 3, imprimez Fizz ; sinon s'il se divise par 5, imprimez Buzz ; sinon imprimez le nombre.
Click Run to see the output here. · Cliquez sur Exécuter pour voir le résultat ici.