Инструкция
1
Чтобы найти факториал числа, необходимо вычислить произведение всех чисел, в промежутке от 1 до заданного числа. Общая формула выглядит таким образом:

n! = 1*2*…*n, где n – любое целое неотрицательное число. Факториал принято обозначать восклицательным знаком.
2
Основные свойства факториалов:

• 0! = 1;

• n! = n*(n-1)! ;

• n!^2 ≥ n^n ≥ n! ≥ n.

Второе свойство факториала называется рекурсией, а сам факториал – элементарной рекурсивной функцией. Рекурсивные функции часто применяются в теории алгоритмов и в написании компьютерных программ, поскольку многие алгоритмы и функции программирования имеют рекурсивную структуру.
3
Определить факториал большого числа можно по формуле Стирлинга, которая дает, однако, приближенное равенство, но с маленькой погрешностью. Полная формула выглядит следующим образом:

n! = (n/e)^n*√(2*π*n)*(1 + 1/(12*n) + 1/(288*n^2) + …)
ln (n!) = (n + 1/2)*ln n – n + ln √(2*π),

где e – основание натурального логарифма, число Эйлера, численное значение которого принято приблизительно равным 2,71828…; π – математическая константа, значение которой принято равным 3,14.

Широко распространено использование формулы Стирлинга в виде:

n! ≈ √(2*π*n)*(n/e)^n.
4
Существуют различные обобщения понятия факториала, например, двойной, m-кратный, убывающий, возрастающий, праймориал, суперфакториал. Двойной факториал обозначается !! и равен произведению всех натуральных чисел на интервале от 1 до самого числа, имеющих ту же четность, например, 6!! = 2*4*6.
5
m-кратный факториал – общий случай двойного факториала для любого целого неотрицательного числа m:
для n = mk – r справедливо n!...!! = ∏ (m*I - r), где r – множество целых чисел от 0 до m-1, I – принадлежит множеству чисел от 1 до k.
6
Убывающий факториал записывается следующим образом:
(n)_k = n!/(n - k)!

Возрастающий:
(n)^k = (n + k -1)!/(n - 1)!
7
Праймориал числа равен произведению простых чисел меньше самого числа и обозначается #, например:
12# = 2*3*5*7*11, очевидно, что 13# = 11# = 12#.

Суперфакториал равен произведению факториалов чисел на интервале от 1 до исходного числа, т.е.:
sf(n) = 1!*2!*3*…(n - 1)!*n!, например, sf(3) = 1!*2!*3! = 1*1*2*1*2*3 = 12.