Пример рекурсивной функции на PHP и javascript
Функция вызывающая саму себя называется рекурсивной.
Например, есть функция, в которую передается целое число, пока это число не станет равно 0, функция должна вызывать саму себя, уменьшая передаваемый параметр на 1-цу. Причем результат функции должен умножаться на принятое число.
PHP
function fanc($n){
if($n == 0 )
{
return 1;
}
else
{
return $n * fanc($n - 1);
}
}
echo fanc(5); //120 (5*4*3*2*1 = 120)
javascript
function pow(x, n){
if(n==1)
{
return x;
}
else
{
var res = x * pow(x, n-1);
return res;
}
}
pow(3, 3); // 27
// рекурсивная функция
// 3 в 3 степени
js
function sumTo(n){ // рекурсия
if(n==1){ return 1}
return n + sumTo(n -1 );
}
alert(sumTo(4)); // 10
// считает сумма всех чисел от n до 1
// заставим курицу кукарекать:
var chicken = {
kukareku: function(n){
return n > 1 ? chicken.kukareku(n - 1) + "-kukareku" : "kukareku";
}
}
chicken.kukareku(4); // kukareku-kukareku-kukareku-kukareku
Комментарии к статье