46.2 - Calculateur de coût de livraison de colis, partie 2 — complexification (Leçons JS — arguments et return)
📘 Tâche : Parcel Delivery Calculator 2.0
Ceci est la suite de la tâche précédente. L'architecture reste la même — les mêmes
4 fonctions (3 calculatrices + 1 principale), les signatures des fonctions ne changent pas.
Seul ce qui se passe à l'intérieur des trois fonctions calculatrices change.
🧩 Condition principale
Ne touchez qu'à la logique à l'intérieur de calculateWeightCost,
calculateDistanceCost et calculateUrgentSurcharge.
La fonction principale calculateTotalCost() — reste inchangée.
💰 Nouveaux tarifs (codés en dur en tant que constantes) :
- 📦 Coût de base (base fee) — 15 $ (inchangé)
- ⚖️ Poids : si le colis est plus lourd que 10 kg — tarif 2 $/kg (remise pour les colis lourds),
si 10 kg ou moins — tarif normal 3 $/kg
- 📏 Distance : si la livraison est plus loin que 15 km — tarif 1.5 $/km (remise pour les longues distances),
si 15 km ou moins — tarif normal 2 $/km
- 🚀 Majoration pour urgence : si express et que le montant est supérieur à 60 $ — +15% (majoration
un peu plus faible pour les grosses commandes) ; si express et que le montant est de 60 $ ou moins — +25% ; pas express — pas de majoration