Вычислить d, которое равно 1*2*3* и так до числа n, которое вводится пользователем
Вычислить d, которое равно 1 умножить на 2 умножить на 3 и так до числа n, которое вводится пользователем. Я написал так:
n=int(input())
p=1
s=0
for i in range(1,n+1):
for b in range(1, i+1):
p=p*b
s=p
print(s)
Но этот код работает неправильно. Как исправить?
Ответы (2 шт):
Автор решения: Fox Fox
→ Ссылка
import math
N = int(input("Введите число: "))
print(f"Факториал {N}: {math.factorial(N)}")
Автор решения: чистов_n
→ Ссылка
Вы написали даже слишком сложно.
Вот так правильно:
n=int(input())
p=1 # (1)
for i in range(1,n+1): # (2)
p *= i # (3)
print(p)
- Задаём
p
равным 1. - Проходим по всем числам от
1
доn
включительно. - Домножаем
p
наi
Ввод:
3
Вывод:
6