Вот так эта задача решается правильно: import math
print(math.factorial(int(input()))) Вот так эту задачу можно решить другими встроенными в Python механизмами: import math
print(math.prod(range(1, int(input()) + 1))) import functools
print(functools.reduce(int.__mul__, range(2, int(input()) + 1), 1)) И, наконец, тот бред, который от тебя ожидают: p = 1
for i in range(2, int(input()) + 1): p *= i
print(p)