Collatz

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
akon55
User
Beiträge: 2
Registriert: Sonntag 10. Oktober 2021, 11:56

Aufgabe1: Schreiben Sie eine Funktion, die als Eingabe eine ganze Zahl z bekommt (erzwingen Sie die Übergabe ¨
einer ganzen Zahl). Ist z gerade, soll z/2 zurückgegeben werden, ist z ungerade, soll 3z+1 zurückgegeben
werden.

Aufgabe2: Schreiben Sie eine Funktion, die eine Zahl z als Input erhält und solange die Schritte aus Aufgabe1 ausführt, bis ein Zyklus entsteht, also eine Zahl, die bereits betrachtet wurde. Diese Zahl soll
zurückgegeben werden.
Bsp.: Für die Eingabe 4 sind die nächsten entstehenden Zahlen 2 ( 4/2), 1 ( 2/2) und dann wieder 4(3 · 1 + 1). Hier soll der Algorithmus abbrechen und 4 zurückgeben, da die Zahl 4 bereits betrachtet wurde und somit ein Zyklus entstanden ist.

Kann mir einer bitte bei der Aufgabe2 helfen.
__deets__
User
Beiträge: 14545
Registriert: Mittwoch 14. Oktober 2015, 14:29

Zum einpflegen nuns nachschlagen von zahlen eignet sich der set-Datentyp besonders gut.
Antworten