Algorithmique et programmation (Python)
Variables, boucles, conditions en Python
Un algorithme est une suite finie d'instructions non ambiguës permettant de résoudre un problème. En seconde, Python est le langage de référence : sa syntaxe minimaliste force une structuration claire. La boucle parcourt les entiers de à (la borne supérieure est exclue) ; répète tant que la condition est vraie. L'indentation (espaces obligatoires en début de bloc) est syntaxiquement obligatoire en Python — une indentation incorrecte cause une erreur ou change silencieusement le sens du programme. Déboguer consiste à suivre l'exécution pas à pas avec des valeurs test pour identifier où le comportement diverge de l'attendu.
📖 Vocabulaire clé
Algorithme
:
Suite finie d'instructions non ambiguës qui, à partir de données d'entrée, produit un résultat en un nombre fini d'étapes.
Variable
:
Espace mémoire nommé qui stocke une valeur. En Python : crée la variable avec la valeur .
Boucle
:
Répète un bloc un nombre fixé de fois. exécute le bloc fois avec .
Boucle
:
Répète un bloc tant qu'une condition est vraie. Risque de boucle infinie si la condition ne devient jamais fausse.
📋 Écrire un algorithme en Python
- 1 Déclarer les variables et leurs valeurs initiales. Exemple : (accumulateur initialisé à zéro pour une somme).
- 2 Utiliser pour répéter fois. Exemple : fait varier de à inclus.
- 3 Utiliser pour répéter tant qu'une condition est vraie. Exemple : divise par jusqu'à ce qu'il atteigne .
- 4 Tester avec des exemples pour vérifier la correction de l'algorithme. Exemple : Pour un programme de somme , vérifier que le résultat est bien .
✅ Exemple résolu
Énoncé : Écrire un algorithme Python qui calcule la factorielle de (c'est-à-dire ). Tester pour .
Démarche :
- Initialiser le résultat : .
- Boucle : puis .
- Exécution pour : → , → , → , → , → .
Réponse : . Le programme affiche .
📐 Formules clés
: prend les valeurs
est équivalent à
Indentation obligatoire en Python (4 espaces ou 1 tabulation)
🎨 Illustration
Algorithmique — boucle for
Organigramme de l'exemple du cours : factorielle avec une boucle for
Traduction en organigramme normalisé de l'exemple du cours ( puis ), déroulé pour .
- 1 En Python, l'incrémentation est gérée automatiquement par ; l'organigramme la rend explicite pour montrer l'équivalence avec une boucle .
- 2 Pour , vaut et fournit (le est exclu, comme rappelé dans le piège du cours).
- 3 Trace de l'exécution : , , , , , puis fait sortir de la boucle ( devient faux) : le programme affiche .
Ce qu'il faut lire : Suis la branche « Oui » autour du losange tant que est vrai ; dès que dépasse , la branche « Non » affiche le résultat final.
❌ Une erreur, une suggestion
L'erreur fréquente
En Python, produit (pas ).
La suggestion
La borne supérieure est exclue !
💡 À retenir
- produit les entiers de à : la borne supérieure est toujours exclue.
- La boucle est utilisée quand le nombre de répétitions est connu à l'avance ; sinon.
- L'indentation est obligatoire en Python : elle délimite les blocs de code (pas d'accolades).
- Pour déboguer, exécuter le code à la main pas à pas avec des valeurs test.