Python :: Aufgabe #310 :: Lösung #3
5 Lösungen
#310
Berechnung Kfz-Steuer (Deutschland 2021)
Anfänger - Python
von JKooP
- 15.12.2020 um 19:35 Uhr
Schreibe eine Methode/Funktion, mit der es möglich ist, die Kfz- Steuer sowohl für Benzin-, als auch Dieselfahrzeuge
ab dem 01.01.2021 für Deutschland zu berechnen.
Übergeben werden sollen die Parameter: Otto- o. Dieselfahrzeug, Hubraum in ccm, CO2 in g.
Als Ergebnis soll die Gesamtsteuer in Euro fürs Jahr ausgegeben werden.
Eine ausführliche Berechnungshilfe findet man hier!
Viel Spaß
ab dem 01.01.2021 für Deutschland zu berechnen.
Übergeben werden sollen die Parameter: Otto- o. Dieselfahrzeug, Hubraum in ccm, CO2 in g.
Als Ergebnis soll die Gesamtsteuer in Euro fürs Jahr ausgegeben werden.
Eine ausführliche Berechnungshilfe findet man hier!
Viel Spaß
#3
von 0 (0 Punkte)
- 30.12.2020 um 20:29 Uhr
Mein Ziel beim Programmieren der Funktion war es, dass die CO2-Preistabelle leicht geändert oder erweitert werden kann.
Python-Code
import math def kfz_steuer_2021(fahrzeugtyp, hubraum, co2_ausstoss): # Berechnung der Hubraum-Steuer hubraum_preistabelle = {'otto': 2, 'diesel': 9.5} hubraum_steuer = 0 if hubraum > 0: hubraum_preis = hubraum_preistabelle[fahrzeugtyp] hubraum_steuer = math.ceil(hubraum / 100) * hubraum_preis # Berechnung der CO2-Steuer co2_preistabelle = [ [96, 2], [116, 2.2], [136, 2.5], [156, 2.9], [176, 3.4], [196, 4], ] co2_steuer = 0 for zeile in range(0, len(co2_preistabelle)): co2_preisstufe = co2_preistabelle[zeile][0] co2_preis = co2_preistabelle[zeile][1] if co2_ausstoss >= co2_preisstufe: if zeile < len(co2_preistabelle) - 1: # alle Zeilen außer der letzten co2_preis_max = co2_preistabelle[zeile + 1][0] - co2_preistabelle[zeile][0] co2_menge = min(co2_ausstoss - (co2_preisstufe - 1), co2_preis_max) else: # letzte Zeile co2_menge = co2_ausstoss - (co2_preisstufe - 1) co2_steuer += co2_menge * co2_preis # Berechnung der kompletten KFZ-Steuer kfz_steuer_komplett = round(hubraum_steuer + co2_steuer, 2) # Ausgabe zur Kontrolle # print('Hubraum-Steuer:', hubraum_steuer, '€') # print('CO2-Steuer:', co2_steuer, '€') # print('KFZ-Steuer komplett:', kfz_steuer_komplett, '€') return kfz_steuer_komplett # Berechnungs-Beispiel Volvo XC 90 B5 kfz_steuer_2021('diesel', 1969, 158)
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1