Курс Raku / Функційне, конкурентне, реактивне та веб-програмування / Функційне програмування / Рекурсія / Вправи / Лічба вгору

Розв’язання: Лічба вгору

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

Код

sub countup($n) {
    return if $n < 1;
    countup($n - 1);
    say $n;
}

countup(3);

🦋 Знайдіть програму у файлі count-up.raku.

Вивід

1
2
3

Коментарі

  1. Базовий випадок return if $n < 1 так само зупиняє рекурсію, щойно лічба переходить нуль.

  2. Саме порядок двох останніх рядків змушує її лічити вгору: кожен виклик спершу рекурсує до самого базового випадку і лише потім друкує своє число, коли виклики розкручуються назад. Тож 1 друкується першим, а $n — останнім.

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

Лічба вгору   |   Трикутне число