python分别使用 for 循环语句和 while循环语句编写程序,输出1!+2! +3! +..+n!的值,其中 n=10
时间: 2024-11-10 22:14:53 浏览: 30
在Python中,你可以使用for循环和while循环来计算1到n的阶乘之和。以下是两种方法的示例:
**使用for循环:**
```python
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n - 1)
n = 10
factorial_sum = sum(factorial(i) for i in range(1, n + 1))
print("1! + 2! + ... +", n, "! =", factorial_sum)
```
**使用while循环:**
```python
def factorial(n):
fact = 1
if n == 0 or n == 1:
return fact
else:
while n > 1:
fact *= n
n -= 1
return fact
n = 10
i = 1
factorial_sum = 0
while i <= n:
factorial_sum += factorial(i)
i += 1
print("1! + 2! + ... +", n, "! =", factorial_sum)
```
这两种方法都会输出1到10的阶乘之和。
相关问题
编写一个Python程序,实现如下功能: 使用while循环语句求1+2!+3!+...+20!的和。
以下是使用while循环语句求1+2!+3!+...+20!的和的Python程序:
```python
n = 1
sum = 0
jie = 1
while n <= 20:
jie *= n
sum += jie
n += 1
print(sum)
```
运行结果为:2561327494111820313
阅读全文