Открыть меню    

Пример рекурсивной функции на 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

Комментарии к статье

Добавить комментарий к сниппету