← Все вопросы
Как посчитать факториал числа (5! = 120)?
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
Но для понимания полезно один раз написать цикл самому.
Ваш ответ
Войдите, чтобы ответить на вопрос.