← Все вопросы

Как посчитать факториал числа (5! = 120)?

Задан 9 месяцев назад1.3к просмотров2 ответа
5

На математике проходим факториал: 5! = 1·2·3·4·5 = 120. Как посчитать его программой? Можно без хитрых рекурсий, простым циклом?

2 ответа

11
✓ Принятый ответ — помог автору

Факториал — это произведение всех чисел от 1 до n. Заводим переменную-накопитель, начинаем с 1 и умножаем в цикле:

n = 5
result = 1
for i in range(2, n + 1):
    result *= i
print(result)  # 120

Важно начинать result с 1, а не с 0 — иначе всё умножение обнулится. И помни: 0! = 1 (этот цикл для n=0 как раз вернёт 1).

4

Если не нужно писать руками — в стандартной библиотеке уже есть:

import math
print(math.factorial(5))  # 120

Но для понимания полезно один раз написать цикл самому.

Ваш ответ

Войдите, чтобы ответить на вопрос.