1、函数应用,编写程序,求1+2!+3!+...+20!的和。
时间: 2023-10-02 14:13:25 浏览: 84
可以使用循环和递归两种方式来实现,以下是两种方式的示例代码。
使用循环:
```python
# 计算阶乘函数
def factorial(n):
result = 1
for i in range(1, n+1):
result *= i
return result
# 计算1+2!+3!+...+20!的和
sum = 0
for i in range(1, 21):
sum += factorial(i)
print(sum)
```
使用递归:
```python
# 计算阶乘函数
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
# 计算1+2!+3!+...+20!的和
def sum_factorial(n):
if n == 1:
return 1
else:
return factorial(n) + sum_factorial(n-1)
print(sum_factorial(20))
```
两种方法都可以得到1+2!+3!+...+20!的和为2561327494111820313。
阅读全文