Raku kurss / Pamati / Izpildes plūsmas pamati / Cikli / Exercises / FizzBuzz ciklā

Risinājums: FizzBuzz ciklā

Šoreiz dalāmības pārbaude notiek ciklā. Tā vietā, lai tieši izdrukātu, frāze vispirms tiek uzkrāta atsevišķā mainīgajā un vēlāk interpolēta virknē.

Kods

Šeit ir jaunais risinājums:

for 1..50 -> $n {
    my $fizzbuzz = '';
    $fizzbuzz ~= 'Fizz' if $n %% 3;
    $fizzbuzz ~= 'Buzz' if $n %% 5;
    say "$n: $fizzbuzz";
}

🦋 Atrodiet programmu failā fizbuzz-loop.raku.

Izvade

$ raku exercises/loops/fizbuzz-loop.raku

Komentārs

Pedantisks problēmu risinātājs varētu uzskatīt, ka risinājums nav ideāls, jo tas izdrukā atstarpi pēc kolas pat tiem skaitļiem, kuriem nav piešķirts neviens Fizz vai Buzz. Modificējiet programmu, lai izvairītos no šīs problēmas.

Kursa navigācija

FizzBuzz ciklā   |   Digitālās kāpnes