В терминальном условии должно быть сравнение $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
Вам ответят команда поддержки Хекслета или другие студенты.
Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.
Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно.
Наши выпускники работают в компаниях:
Зарегистрируйтесь или войдите в свой аккаунт