Курс языка программирования Raku / Функциональное, конкурентное, реактивное и веб-программирование / Функциональное программирование / Рекурсия / Exercises / Степень
Решение: Степень
Вот один из возможных вариантов решения задачи.
Код
sub power($base, $exp) {
$exp == 0 ?? 1 !! $base * power($base, $exp - 1);
}
say power(2, 10);🦋 Исходный код можно найти в файле power.raku.
Вывод
1024Комментарии
Базовый случай возвращает
1, когда показатель доходит до0: любое основание в нулевой степени равно единице.Рекурсивный шаг умножает
$baseнаpower($base, $exp - 1), отслаивая по одному множителю за раз. Поэтомуpower(2, 10)перемножает десять двоек и даёт1024.
Навигация по курсу
← Степень | Сумма цифр →