Code: Alles auswählen
Das Collatz-Problem
xn=input("Geben sie die zu berechnende Zahl an: ")
a = int(input("Wie viele Berechnungen?"))
for xn in range(a):
if xn%2==0:
xn=xn/2
print("xgerade = ",xn)
elif xn%2==1:
xn=3*xn+1
print("xungerade = ",xn)
mein problem ist, dass ich xn mit dem modulo berechne und dann kommt halt das ergebnis von dem modulo raus ich möchte eigentlich , dass wenn die zahl gerade ist dann wird xn = xn/2 gerechnet und wenn es ungerade ist wird xn=3*xn+1 gerechnet
https://de.wikipedia.org/wiki/Collatz-Problem
Code: Alles auswählen
Geben sie die zu berechnende Zahl an: 7
Wie viele Berechnungen?10
xgerade = 0.0
xungerade = 2.0
xgerade = 1.0
xungerade = 5.0
xgerade = 2.0
xungerade = 8.0
xgerade = 3.0
xungerade = 11.0
xgerade = 4.0
xungerade = 14.0