📝
Fiche de révision
📝 Fiche de révision — Langages et programmation
🧱 Constructions élémentaires
| construction | Python |
|---|---|
| séquence | instructions successives |
| affectation | x = expr |
| conditionnelle | if / elif / else |
| boucle bornée | for i in range(n) |
| boucle non bornée | while cond |
| fonction | def f(x): … return ; appel f(3) |
- Langages Turing-complets : même puissance ; différences de syntaxe : indentation (Python) / accolades et
;(JavaScript, C), types déclarés (Cint),let,===. - Nouveau langage : repérer d'abord ces six constructions.
🎨 Styles
- Impératif (état modifié), fonctionnel (fonctions sans effet de bord), objet (données + méthodes), événementiel (réactions), logique (faits, règles).
- Python : multi-paradigme.
- Pas des langages de programmation : HTML, CSS, SQL, JSON, CSV (description, requêtes, données).
📜 Spécification
- Prototype : nom, paramètres, type du résultat ; docstring : ce que fait la fonction.
- Précondition : condition sur les arguments (à charge de l'appelant) ; postcondition : propriété garantie du résultat.
assert condition, "message"→AssertionErrorsi faux ; pour préconditions / postconditions, pas pour valider une saisie utilisateur.
def racine_entiere(n):
assert type(n) == int and n >= 0
r = 0
while (r + 1) * (r + 1) <= n:
r = r + 1
assert r * r <= n < (r + 1) ** 2
return r🧪 Jeux de tests
- Test = appel + résultat attendu (
assert f(x) == y) ; jeu = plusieurs tests. - Couvrir : cas ordinaires, limites (0, un élément, bornes), particuliers, variés (négatifs, doublons, grands).
- Succès ≠ correction :
maximuminitialisé à 0 passe les tests positifs, échoue sur[-3, -8, -1]. - Mise au point : lire l'erreur (type, ligne) → exemple minimal ajouté aux tests → tracer (
print, tableau) → corriger → relancer tout.
📚 Bibliothèques
import math;math.sqrt(2);from random import randint;randint(1, 6).- Modulariser : une fonction par tâche,
from outils import moyenne. - Documentation = spécification : prototype, paramètres (optionnels, défauts), retour, exemples ;
help(f),dir(module).
⚠️ Pièges à éviter
| Piège | Correction |
|---|---|
| Conclure « juste » après des tests réussis | tests + raisonnement |
| Tests tous semblables | ajouter limites et négatifs |
assert pour une saisie utilisateur | if + message |
| Précondition non vérifiée par l'appelant | c'est l'appelant qui est en faute |
| Réécrire ce qu'une bibliothèque fait | lire la documentation |
📌 À retenir
- Six constructions, syntaxes variées.
- Styles et langages de description.
- Prototype, pré/postconditions, assert.
- Tests variés ; succès ≠ preuve.
- import et documentation.
Révise ce chapitre avec KlarIA
Tuteur qui t'explique pas à pas, quiz pour t'entraîner, flashcards pour mémoriser. Gratuit.
Créer mon compte gratuitement→