Objectifs de cette leçon
- Définir ce qu'est un algorithme
- Identifier les étapes d'un algorithme du quotidien
- Comprendre la pensée computationnelle
Qu'est-ce qu'un algorithme ? 🧠
Définition
Un algorithme est une suite d'instructions qui, exécutées dans un certain ordre, permettent de résoudre un problème. C'est comme une recette de cuisine :
- Les ingrédients sont les données d'entrée
- Les étapes de la recette sont les instructions
- Le plat cuisiné est le résultat
🧑🍳 Recette du gâteau au chocolat → mélanger les œufs et le sucre, ajouter la farine, verser dans un moule, enfourner à 180°C → gâteau !
💻 Algorithme → instructions étape par étape → résultat
Pourquoi c'est important ?
Un algorithme doit être :
| Propriété | Explication | Analogue en cuisine |
|---|---|---|
| Fini | Il doit s'arrêter après un certain nombre d'étapes | On ne remet pas indéfiniment au four |
| Précis | Chaque étape est claire et sans ambiguïté | "Une pincée" c'est vague — "5g" c'est précis |
| Efficace | Il résout le problème sans gâcher de ressources | Utiliser le bon nombre d'œufs, pas 50 |
| Général | Il fonctionne pour toutes les entrées valides | La recette marche pour 2 ou 6 personnes |
Les briques de base de tout algorithme
Tous les algorithmes sont construits avec seulement 3 structures :
| Structure | Explication | Code |
|---|---|---|
| Séquences | Les instructions s'enchaînent l'une après l'autre | Instruction 1 → Instruction 2 → Instruction 3 |
| Conditions | On choisit entre deux chemins selon une question | Si l'eau bout → verser, sinon → attendre |
| Boucles | On répète une action tant qu'une condition est vraie | Tant que la cafetière n'a pas fini → attendre |
Ces 3 structures suffisent à écrire n'importe quel programme — même un système de navigation GPS ou un moteur de recherche !
Exemple pas à pas : Algorithme du café
Voyons un algorithme simple avec des commentaires expliquant chaque ligne comme si on était en classe :
Le pseudo-code ci-dessous est un langage inventé pour décrire un algorithme simplement, sans se soucier de la syntaxe d'un vrai langage. Chaque ligne est expliquée :
Exécution pas à pas
pseudo1/14🟢DEBUT ⬅ J'annonce le début de mon programmeDÉPARTLe programme démarre, toutes les variables sont prêtes.Le programme démarre. Tout est initialisé, prêt à exécuter les instructions.
🔍 Observation : Dans cet algorithme, on trouve les 3 structures essentielles :
- Séquence : les lignes s'exécutent dans l'ordre (remplir → mettre → allumer → …)
- Boucle :
TANT QUE café_pas_prêt FAIRE … FIN TANT QUErépète l'attente- Condition : `SI sucre_demandé ALORS … FIN SI) choisit selon la réponse
Maintenant, le même algorithme écrit en Python (un vrai langage de programmation) :
def faire_cafe(): remplir_cafetiere("eau") mettre_cafe("moulu") allumer_cafetiere() while not cafe_pret(): # 🔄 Boucle : tant que pas prêt… attendre() # …j'attends verser_dans_tasse() if input("Sucre ? (o/n) : ") == "o": # ❓ Condition ajouter_sucre() print("Dégustez !") # 😊
Compare le pseudo-code et le Python : vois-tu les ressemblances ? TANT QUE = while, SI = if, FIN = fin du bloc. Le pseudo-code sert à réfléchir avant de coder !
Exercice pour toi 🎯
Prends une activité de ton quotidien et écris-la en algorithme :
- Se brosser les dents
- Prendre le bus pour aller au collège
- Préparer des pâtes
Pour chaque activité, écris les étapes en pseudo-code avec :
- Un
DEBUTet unFIN - Au moins une condition (
SI) - Au moins une boucle (
TANT QUE)
💡 Astuce : Commence par écrire les étapes en français simple, puis traduis-les en pseudo-code. Ne cherche pas la perfection du premier coup — on améliore toujours son algorithme !
Méthode de travail
- Comprendre le concept sur papier avant de coder
- Implémenter sans aide, puis comparer avec une solution
- Analyser la complexité de chaque solution
- Refaire les exercices une semaine plus tard
Exécution pas à pas
État de la mémoire
4 variablesPile d'appels
2 appels⚡ Simulateur — Algorithme Café
Étape 1/13Le programme commence. On annonce le début de l'algorithme.