编写程序,求1+2!+3!+……+20!的和。
时间: 2023-10-08 18:13:11 浏览: 69
求1!+2!+…+20!的和
我们可以使用循环和递归两种方法来实现。
方法一:循环
思路:用一个变量sum来存储求和结果,用一个变量factorial来存储当前正在计算的阶乘数,循环从1到20,每次将当前阶乘数加到sum中,然后将阶乘数加1,继续下一次循环。
Python代码:
sum = 0
factorial = 1
for i in range(1, 21):
factorial *= i
sum += factorial
print(sum)
方法二:递归
思路:定义一个函数factorial(n),用于计算n的阶乘;然后用一个变量sum来存储求和结果,用循环调用factorial函数,每次将返回值加到sum中,直到循环20次为止。
Python代码:
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
sum = 0
for i in range(1, 21):
sum += factorial(i)
print(sum)
阅读全文