Raku-Kurs / Anhang 🆕 / Arbeiten mit Daten / Zahlen und Mathematik / Exercises / Collatz-Schritte
Lösung: Collatz-Schritte
Hier ist eine mögliche Lösung der Aufgabe.
Code
my $n = 27;
my $steps = 0;
while $n != 1 {
$n = $n %% 2 ?? $n div 2 !! 3 * $n + 1;
$steps++;
}
say $steps;🦋 Du findest den Quellcode in der Datei collatz.raku.
Ausgabe
111Kommentare
Der ternäre Operator
?? !!wählt den nächsten Wert in einem einzigen Ausdruck:$nhalbieren, wenn es gerade ist ($n %% 2), sonst3 * $n + 1anwenden.27ist ein berühmter kleiner Fall, der einen erstaunlich langen Umweg nimmt —111Schritte —, bevor er sich schließlich bei1beruhigt.