Easy Python Code hilfe?
Hallo text = input ("Bitte ein Jahr eingeben!: ")
zahl = int(text)
if (zahl %4 != 0):
print ("kein Schaltjahr: ")
elif (zahl /4 == 0):
print("Schaltjahr")
elif (zahl /100 == 0):
print("kein Schaltjahr")
elif (zahl /400 == 0):
print("Schaltjahr")
Schaltjahre sind 1996, 2000, 2004 usw.
Ich verstehe nicht, warum die Verzweigung nicht funktioniert.
![Schaltjahr.py - (Programm, programmieren, Code)](https://images.gutefrage.net/media/fragen/bilder/easy-python-code-hilfe/0_big.jpg?v=1473706984000)
2 Antworten
![](https://images.gutefrage.net/media/user/GunnarPetite/1509041374001_nmmslarge__263_8_2075_2075_5b153817fb077280292b4ba44d6d3b21.jpg?v=1509041376000)
Nun, zum Beispiel erfüllt die Zahl 2004 keine Bedingung. Sie ist durch 4 teilbar (modulo 4 = 0) . Die anderen Bedingungen erfüllt sie auch nicht. Du solltest noch alle anderen Möglichkeiten mit einem ' else ' auffangen.
![](https://images.gutefrage.net/media/user/GunnarPetite/1509041374001_nmmslarge__263_8_2075_2075_5b153817fb077280292b4ba44d6d3b21.jpg?v=1509041376000)
text = input ("Bitte ein Jahr eingeben!: ")
zahl = int(text)
if (zahl%4 != 0):
print ("kein Schaltjahr: ")
elif (zahl%4 == 0):
if (zahl%100 == 0):
if (zahl%400 == 0):
print("Schaltjahr")
else:
print("kein Schaltjahr")
else:
print("Schaltjahr!")
else:
print("kein Schaltjahr")
So funktioniert er.
![](https://images.gutefrage.net/media/default/user/15_nmmslarge.png?v=1551279448000)
Statt % hast du ab Zweig 2 / genomme.
Das gilt dann nur noch für Zahl=0 ^o^