Python : Facture d’électricité à tranches
Créez un compte gratuit pour suivre votre avancement et reprendre où vous avez laissé.
Créer un compteObjectifs travaillés
Un fournisseur d'électricité applique un tarif progressif par tranches selon la consommation annuelle $ x $ (en kWh) :
- chaque kWh est facturé $ 0{,}20 $ € jusqu'à $ 100 $ kWh ;
- au-delà de $ 100 $ kWh et jusqu'à $ 500 $ kWh, chaque kWh supplémentaire est facturé $ 0{,}15 $ € ;
- au-delà de $ 500 $ kWh, chaque kWh supplémentaire est facturé $ 0{,}10 $ €.
- Calculer « à la main » le montant de la facture pour une consommation de $ 80 $ kWh, puis de $ 300 $ kWh et enfin de $ 800 $ kWh.
- Écrire une fonction Python facture qui prend en argument la consommation $ x $ (en kWh) et renvoie le montant à payer (en euros).
- Vérifier à l'aide de la fonction les résultats de la question 1.
Corrigé
- Pour $ x = 80 $ kWh, on est dans la première tranche : $ 80 \times 0{,}20 = \mathbf{16 \text{ €}} $.
- Pour $ x = 300 $ kWh, on paye les $ 100 $ premiers kWh au tarif plein, puis $ 300 - 100 = 200 $ kWh au deuxième tarif :
$ 100 \times 0{,}20 + 200 \times 0{,}15 = 20 + 30 = \mathbf{50 \text{ €}} $. - Pour $ x = 800 $ kWh, on paye les trois tranches :
$ 100 \times 0{,}20 + 400 \times 0{,}15 + 300 \times 0{,}10 = 20 + 60 + 30 = \mathbf{110 \text{ €}} $.
On distingue les trois cas avec if, elif et else :
def facture(x): if x <= 100: return 0.20 * x elif x <= 500: return 20 + 0.15 * (x - 100) else: return 80 + 0.10 * (x - 500)Dans la deuxième branche, les $ 100 $ premiers kWh coûtent $ 100 \times 0{,}20 = 20 $ €, puis on ajoute $ 0{,}15 $ € par kWh supplémentaire.
Dans la troisième branche, les $ 500 $ premiers kWh coûtent $ 20 + 400 \times 0{,}15 = 80 $ €, puis on ajoute $ 0{,}10 $ € par kWh supplémentaire.On teste :
>>> facture(80) 16.0 >>> facture(300) 50.0 >>> facture(800) 110.0Les résultats correspondent bien à ceux calculés à la question 1.