--- title: Factorial id: 597b2b2a2702b44414742771 challengeType: 5 forumTopicId: 302263 localeTitle: Факториал --- ## Description

Напишите функцию для возврата факториала числа.

Факториал числа определяется:

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

Например: 3! = 3 * 2 * 1 = 6 4! = 4 * 3 * 2 * 1 = 24

Примечание: 0! = 1

## Instructions
## Tests
```yml tests: - text: factorial is a function. testString: assert(typeof factorial === 'function'); - text: factorial(2) should return a number. testString: assert(typeof factorial(2) === 'number'); - text: factorial(3) should return 6. testString: assert.equal(factorial(3),results[0]); - text: factorial(3) should return 120. testString: assert.equal(factorial(5),results[1]); - text: factorial(3) should return 3,628,800. testString: assert.equal(factorial(10),results[2]); ```
## Challenge Seed
```js function factorial(n) { // Good luck! } ```
### After Tests
```js const results=[6,120,3628800]; ```
## Solution
```js function factorial(n) { let sum = 1; while (n > 1) { sum *= n; n--; } return sum; } ```