--- id: a302f7aae1aa3152a5b413bc title: Factorialize a Number isRequired: true challengeType: 5 forumTopicId: 16013 localeTitle: Факториализация номера --- ## Description
Верните факториал предоставленного целого числа. Если целое число представлено буквой n, факториал является произведением всех положительных целых чисел, меньших или равных n. Факториалы часто представлены сокращенной нотой n! Например: 5! = 1 * 2 * 3 * 4 * 5 = 120 В функцию будут 5! = 1 * 2 * 3 * 4 * 5 = 120 только целые числа, большие или равные нулю. Не забудьте использовать Read-Search-Ask, если вы застряли. Напишите свой собственный код.
## Instructions
## Tests
```yml tests: - text: factorialize(5) should return a number. testString: assert(typeof factorialize(5) === 'number'); - text: factorialize(5) should return 120. testString: assert(factorialize(5) === 120); - text: factorialize(10) should return 3628800. testString: assert(factorialize(10) === 3628800); - text: factorialize(20) should return 2432902008176640000. testString: assert(factorialize(20) === 2432902008176640000); - text: factorialize(0) should return 1. testString: assert(factorialize(0) === 1); ```
## Challenge Seed
```js function factorialize(num) { return num; } factorialize(5); ```
## Solution
```js function factorialize(num) { return num < 1 ? 1 : num * factorialize(num - 1); } factorialize(5); ```