freeCodeCamp/curriculum/challenges/japanese/10-coding-interview-prep/rosetta-code/factorial.md

1.1 KiB

id title challengeType forumTopicId dashedName
597b2b2a2702b44414742771 階乗 5 302263 factorial

--description--

数字の階乗を返す関数を作成します。

数値の階乗は次のようになります。

n! = n * (n-1) * (n-2) * ..... * 1

例:

  • 3! = 3 * 2 * 1 = 6
  • 4! = 4 * 3 * 2 * 1 = 24

注: 0! = 1 です。

--hints--

factorial という関数です。

assert(typeof factorial === 'function');

factorial(2) は数字を返します。

assert(typeof factorial(2) === 'number');

factorial(3) は6を返します。

assert.equal(factorial(3), 6);

factorial(5) は120を返します。

assert.equal(factorial(5), 120);

factorial(10) は3,628,800を返します。

assert.equal(factorial(10), 3628800);

--seed--

--seed-contents--

function factorial(n) {

}

--solutions--

function factorial(n) {
  let sum = 1;
  while (n > 1) {
    sum *= n;
    n--;
  }
  return sum;
}