Для сохранения прогресса вступите в курс. Войти или зарегистрироваться.

Примечания к видео

В терминальном условии должно быть сравнение $exp с нулём, а не единицей:

function myPow ($base, $exp) {
    $powIter = function ($base, $exp, $acc) use (&$powIter) {
        if ($exp == 0) { return $acc; }
        return $powIter ($base, $exp - 1, $acc * $base);
    };

    return $powIter ($base, $exp, 1);
}

myPow(3, 5); // 243
myPow(4, 4); // 256

Полезные ссылки

Мы учим программированию с нуля до стажировки и работы. Попробуйте наш бесплатный курс «Введение в программирование» или полные программы обучения по Node, PHP, Python и Java.

Хекслет

Подробнее о том, почему наше обучение работает →