Python Programmierung?
Hallo,
ich hab eine Aufgabe, die folgend lautet:
Zur Vereinfachung der Einkommenssteuerberechnung forderten deutsche Politiker im Jahre 2004 ein Reglement, welches die Steuererklärung eines Arbeitnehmers derart vereinfachen sollte, dass diese „auf einem Bierdeckel“ auszurechnen wäre:
- Die ersten 8000 € sind in jedem Fall steuerfrei.
- Der Verdienst von mehr als 8000 € bis 24.000 € wird mit 12 % besteuert.
- Oberhalb 24.000 € bis 48.000 € sind 24 % Steuer zu entrichten.
- Sämtliches Einkommen oberhalb 48.000 € wird mit 36 % versteuert.
Ich habe folgendes Struktogramm:
Es kommt aber nicht das raus, was ich will. Ich weiß, dort ist irgend ein Fehler in der Rechnung. Vielleicht seht ihr ihn ja?
Seid nicht zu gemein zu mir ;) Ist eine JG 11 Aufgabe.
Danke!
evanshelyn
![- (Schule, Mathematik, programmieren)](https://images.gutefrage.net/media/fragen/bilder/python-programmierung-4/0_big.png?v=1713126972000)
2 Antworten
![](https://images.gutefrage.net/media/default/user/11_nmmslarge.png?v=1551279448000)
Sobald man in die nächst höhere Steuerklasse rutscht, wird der variable Betrag der vorhergehenden Steuerklasse zu einem Fixbetrag. Warum trägst du den nicht einfach ein?
(24.000 - 8000) * 0,12 = 1920,-
(48.000 - 24.000) * 0,24 = 5760,-
![- (Schule, Mathematik, programmieren)](https://images.gutefrage.net/media/fragen-antworten/bilder/541658136/0_big.png?v=1713161557000)
![](https://images.gutefrage.net/media/user/cleanercode/1712487595293_nmmslarge__371_572_1203_1203_4eb87b925752e760436e518e01bae5c3.jpg?v=1712487595000)
Ein if-Block ist total grauenhaft - erst recht, wenn es um Modellierung geht.
Du solltest eine switch-Anweisung nehmen und deine Variablen am Besten sprechend umbenennen.
Den Rest überlasse ich dir :)
![- (Schule, Mathematik, programmieren)](https://images.gutefrage.net/media/fragen-antworten/bilder/541640371/0_big.png?v=1713132792000)