Вычисление факториала

Вводится натуральное число. Вычислить его факториал.

Решение задачи на языке программирования Python

Факториалом числа называют произведение всех натуральных чисел до него включительно. Например, факториал числа 5 равен произведению 1 * 2 * 3 * 4 * 5 = 120.

Формула нахождения факториала:

n! = 1 * 2 * … * n,

где n – это число, а n! – факториал этого числа.

Формулу можно представить в таком виде:

n! = 1 * … * (n-2) * (n-1) * n,

т. е. каждый предыдущий множитель меньше на единицу, чем последующий. Или в перевернутом виде, когда каждый следующий меньше предыдущего на единицу:

n! = n * (n-1) * (n-2) * … * 1,

Для вычисления факториала с помощью цикла можно использовать любую формулу. Для рекурсивного вычисления используется последний вариант.

С помощью цикла while:

n = int(input())

factorial = 1
while n > 1:
    factorial *= n
    n -= 1

print(factorial)

Вычисление факториала с помощью цикла for:

n = int(input())

factorial = 1

for i in range(2, n+1):
    factorial *= i

print(factorial)

Будет полезным знать, что модуль math языка программирования Python содержит функцию factorial, принимающую в качестве аргумента неотрицательное целое число и возвращающую факториал этого числа:

>>> import math
>>> math.factorial(4)
24