02 — Convertisseur d'unités

Niveau requis : 1 (input, conversions de types) + début du 2 (if/elif) / Difficulté : 1/5 / Durée estimée : 1 h

Objectif

L'utilisateur lance le programme, choisit une conversion dans un petit menu (1 : °C → °F, 2 : km → miles, 3 : kg → livres), saisit une valeur, et le programme affiche le résultat arrondi. Un outil qu'on pourrait vraiment utiliser.

Convertisseur d'unites
1. Celsius -> Fahrenheit
2. Kilometres -> Miles
3. Kilogrammes -> Livres
Ton choix : 1
Valeur : 25
25.0 degC = 77.0 degF

Notions utilisées

Cahier des charges

Étapes de construction

  1. Écris converter.py qui fait UNE seule conversion, sans menu : demande une température en °C, affiche les °F. Lance et vérifie avec 0 °C (= 32 °F) et 100 °C (= 212 °F).
  2. Soigne l'affichage : f-string avec :.1f, phrase complète avec les deux unités. Relance.
  3. Ajoute le menu (3 print()) et lis le choix avec input(). Pour l'instant, affiche juste le choix reçu. Vérifie qu'il arrive bien comme chaîne ("1", pas 1).
  4. Branche le choix 1 sur ta conversion existante avec un if. Les choix 2 et 3 ne font encore rien. Teste le chemin 1 de bout en bout.
  5. Ajoute les branches elif pour km → miles et kg → livres. Teste les trois chemins, avec des valeurs dont tu connais le résultat.
  6. Ajoute le else final pour les choix invalides : message clair, fin propre. Teste avec 7 puis avec abc.

Extensions possibles

  1. Ajouter les conversions inverses (°F → °C, etc.) : le menu passe à 6 choix.
  2. Redemander la valeur tant qu'elle n'est pas un nombre valide — nécessite while (fin du niveau 2) et te fera toucher du doigt le problème de float("abc") ; la vraie solution propre (try/except) arrive au niveau 5.
  3. Boucler sur le menu après chaque conversion, avec un choix « q » pour quitter (niveau 2, while).

Erreurs fréquentes sur ce projet

Critères de réussite

Commit conseillé

git add projects/mini-projects/02-convertisseur-unites/
git commit -m "project: add unit converter"

Puis entrée de journal + git push.