Как работает рекурсия возведения в степень в данном случае?
function myRecursion($x, $n) {
if ($n == 0) {
return 1;
}
if ($n < 0) {
return myRecursion(1/$x, $n);
}else
return $x * myRecursion($x, $n-1);
}
var_dump(myRecursion(5, 5));
Мне непонятно как работает для отрицательных чисел, ведь число в отрицательной степени равно 1/число с той же положительной степенью.
myRecursion(1/$x, $n)
- откуда данная функция знает, что $n это степень числа $x? Как это работает для положительной степени тоже непонятно.