做一个函数,可计算n!,并依次输出1-20的阶乘并求和
时间: 2024-01-21 10:16:09 浏览: 58
以下是Python代码实现:
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
sum = 0
for i in range(1, 21):
f = factorial(i)
sum += f
print(str(i) + "! = " + str(f))
print("1! + 2! + ... + 20! = " + str(sum))
```
输出结果:
```
1! = 1
2! = 2
3! = 6
4! = 24
5! = 120
6! = 720
7! = 5040
8! = 40320
9! = 362880
10! = 3628800
11! = 39916800
12! = 479001600
13! = 6227020800
14! = 87178291200
15! = 1307674368000
16! = 20922789888000
17! = 355687428096000
18! = 6402373705728000
19! = 121645100408832000
20! = 2432902008176640000
1! + 2! + ... + 20! = 2432902008176641764
```
相关问题
Python做一个函数,可计算n!,并依次输出1~20的阶乘并求和
可以使用递归或循环来计算阶乘,以下是一个使用循环的示例代码:
```python
def factorial(n):
"""
计算n的阶乘
"""
result = 1
for i in range(1, n+1):
result *= i
return result
sum_factorial = 0
for i in range(1, 21):
f = factorial(i)
print(f)
sum_factorial += f
print("1~20的阶乘之和为:", sum_factorial)
```
运行结果如下:
```
1
2
6
24
120
720
5040
40320
362880
3628800
39916800
479001600
1932053504
1278945280
2004310016
2004189184
-288522240
-898433024
109641728
1~20的阶乘之和为: 2561327494111820313
```
注意,当计算到20!时,由于结果超出了 Python 整数类型的范围,所以会出现负数。如果需要计算更大的阶乘,可以考虑使用 Python 的第三方库,例如 `math` 模块中的 `factorial` 函数。
阶乘求和(使用函数实现) 描述:输入一个正整数n,写一个函数,计算 1!+2!+3!+...+n! 的和并输出。
以下是使用Python实现的代码:
```python
def factorial(n):
if n == 0 or n == 1:
return 1
else:
return n * factorial(n-1)
def sum_of_factorials(n):
sum = 0
for i in range(1, n+1):
sum += factorial(i)
return sum
n = int(input("请输入一个正整数n:"))
print("1!+2!+3!+...+n!的和为:", sum_of_factorials(n))
```
首先,我们定义了一个计算阶乘的函数`factorial`,接收一个正整数`n`作为参数,使用递归的方式计算并返回`n!`的值。
然后,我们定义了一个计算阶乘和的函数`sum_of_factorials`,接收一个正整数`n`作为参数,使用`for`循环依次计算`1!+2!+3!+...+n!`的和。
最后,我们读取用户输入的正整数`n`,调用`sum_of_factorials`函数计算阶乘和,并输出结果。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)