求1!+2!+3!+....+n! 之值(循环)
题目描述求Sn=1!+2!+3!+4!+5!+…+n!之值,其中n是一个数字。
输入
n
输出
1到n的阶乘和
输入样例1
5
输出样例1
153
以下是使用循环实现求解的 Python 代码:
n = int(input())
factorial = 1
sum = 0
for i in range(1, n+1):
factorial *= i# 计算i的阶乘
sum += factorial# 将阶乘加入总和中
print(sum)
代码思路解析:
[*]读入 n;
[*]初始化变量 factorial 和 sum,分别表示当前的阶乘和和总和;
[*]使用 for 循环遍历 1 到 n 的数字,每次循环计算当前数字的阶乘,并将其加入阶乘和中;
[*]循环结束后,输出阶乘和即可。
例如,当 n=5 时,程序输出 1!+2!+3!+4!+5!=1+2+6+24+120=153,符合题目要求。 def product(ls):
# 求积
prod = 1
for i in ls: prod *= i
return prod
def fact(n):
return prod(range(2, n + 1))
n = int(input())# 获取输入
facts =
print(sum(facts)
页:
[1]