Python :: Aufgabe #249 :: Lösung #3
4 Lösungen
#249
Die Collatz-Sequenz (3n+1)
Anfänger - Python
von DragStar
- 23.03.2020 um 09:34 Uhr
Schreibe ein Programm, welches die Eingabe einer Zahl anfordert und dann von dieser Zahl die Collatz-Sequenz ausgibt.
#3
von Asthos (410 Punkte)
- 04.04.2020 um 00:16 Uhr
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# Aufgabe:
# Schreibe ein Programm, welches die Eingabe einer Zahl anfordert und dann von dieser Zahl die Collatz-Sequenz ausgibt.
while True:
try:
zahl = int(input('Geben Sie eine natürliche Zahl ein: '))
except ValueError:
continue
if zahl < 1:
None
else:
break
reihe = []
reihe.append(zahl)
while True:
if zahl % 2 == 0:
zahl = round(zahl / 2)
else:
zahl = 3 * zahl + 1
reihe.append(zahl)
if zahl == 1:
break
print(reihe)
Ergebnis bei Startwert von 25:
[25, 76, 38, 19, 58, 29, 88, 44, 22, 11, 34, 17, 52, 26, 13, 40, 20, 10, 5, 16, 8, 4, 2, 1]
Kommentare:
Für diese Lösung gibt es noch keinen Kommentar
Seite 1 von 0
1
