Raku kurss / Pielikums 🆕 / Darbs ar datiem / Skaitļi un matemātika / Exercises / Kolaca soļi
Risinājums: Kolaca soļi
Šeit ir iespējams risinājums uzdevumam.
Kods
my $n = 27;
my $steps = 0;
while $n != 1 {
$n = $n %% 2 ?? $n div 2 !! 3 * $n + 1;
$steps++;
}
say $steps;🦋 Atrodiet programmu failā collatz.raku.
Izvade
111Komentāri
Trīsvērtīgais operators
?? !!nākamo vērtību izvēlas vienā izteiksmē: samazina$nuz pusi, kad tas ir pāra ($n %% 2), citādi piemēro3 * $n + 1.27ir slavens mazs gadījums, kas veic pārsteidzoši garu līkumu —111soļus —, pirms beidzot nosēžas pie1.