输出1! +2! +3! +......n!
时间: 2023-12-01 21:43:29 浏览: 99
C语言编程-编写函数fun求1!+2!+3!+ …… +n!的和,在main函数中由键盘输入n值,并输出运算结果;
5星 · 资源好评率100%
您好,可以使用循环和递归两种方式来实现这个问题。下面是两种方式的代码实现:
1. 使用循环方式实现:
```python
def factorial(n):
result = 1
for i in range(1, n+1):
result *= i
return result
def sum_factorial(n):
sum = 0
for i in range(1, n+1):
sum += factorial(i)
return sum
n = int(input("请输入一个正整数:"))
print("1! + 2! + 3! + ... + n! = ", sum_factorial(n))
```
2. 使用递归方式实现:
```python
def factorial(n):
if n == 1:
return 1
else:
return n * factorial(n-1)
def sum_factorial(n):
if n == 1:
return 1
else:
return factorial(n) + sum_factorial(n-1)
n = int(input("请输入一个正整数:"))
print("1! + 2! + 3! + ... + n! = ", sum_factorial(n))
```
以上两种方式都可以实现题目要求的功能,不过使用递归方式实现时需要注意递归深度的问题。如果递归深度太大,可能会导致程序崩溃。因此,在实际应用中,建议使用循环方式实现。
阅读全文