JavaScript

再帰関数を使って階乗を求める関数を作る

再帰関数とは

ある関数が自分自身を呼び出す事。
または、そのような関数。

例えば、階乗を計算するように、同種の手続きをなんども呼び出すような処理をコンパクトに表現できる。

例えば

引数の数字の階乗を求める関数を例とします。
階乗とは、総積のこと。
例えば5なら、 5 * 4 * 3 * 2 * 1 =120

自然数nの階乗は
n * (n-1の階乗)
で求められるので、それを元にコードを書くと

function factorial(n) {
  if(n != 0) {
    return n * factorial(n - 1);
  }
  return 1;
}

結果はこう

console.log(factorial(5));
// 結果は120

factorial()の中で、factorial()を呼び出している。