Курс Raku / Розширені / Порядок виконання / given та when / Вправи / Парне, непарне чи нуль

Розв’язання: Парне, непарне чи нуль

Ось один із можливих варіантів розв’язання задачі.

Код

my $n = 12;

given $n {
    when 0      { say 'zero' }
    when $_ %% 2 { say 'even' }
    default     { say 'odd' }
}

🦋 Вихідний код можна знайти у файлі sign-of-a-number.raku.

Вивід

even

Коментарі

  1. when 0 збігається з єдиним значенням нуль. Він іде першим, бо нуль також парний, а ми хочемо повідомити про нього окремо.

  2. when $_ %% 2 — це умова, де $_ є топіком, встановленим given: оператор %% перевіряє, чи ділиться він націло на два. Значення 12 не є нулем, але ділиться на два, тож програма виводить even.

  3. default охоплює все, що залишилося, — числа, які не є ані нулем, ані парними, тобто непарні.

Навігація курсом

Парне, непарне чи нуль   |   Зіставлення за типом