В книге Д. Ляпина, А. Никитина «PHP – это просто» урок 5 посвящен ветвлениям и функциям. В одном из параграфов урока рассказывается о рекурсии. Одно из заданий этого 5-го урока посвящено операции "рекурсия".
Задание.
С помощью рекурсии требуется написать функцию возведения числа в степень. Использовать следующую форму: function pоwer($vаl, $pоw), где $vаl - заданное число; $pоw - степень.
Решение.
Рекурсия - вызов функции из самой себя. Внутри тела функции pоwer вызовем ее саму. Но до этого предусмотрим возможность использования значений параметров функции равных 0 и менее 0.
<?php
function pоwer($val, $pow)
{
if ($val == 0)
return 0;
elseif ($pow == 0)
return 1;
elseif ($pow < 0)
return power(1/$val, -$pow);
else
return $vаl * power($vаl, $pоw-1);
}
echo power(3, -2); // Выведет 0,11111111111111111 (т.е. 3 в степени -2)
?>
Можно посмотреть видео "Проверка домашнего задания" о моем решении этой задачи возведения числа в степень при учебе в Школе программирования GeekBrains
Курс посвящен основам программирования и учеба проходит на языке программирования JavaScript. Преподаватель Андрей Заярный. Учитель с карандашом в руке подробно объясняет алгоритм решения задачи со степенью. Настолько подробно, что все становится понятно так, что мои комментарии излишни.