求1到n的阶乘之和python
时间: 2023-12-11 15:23:45 浏览: 26
可以使用循环来求解1到n的阶乘之和,代码如下:
```python
n = int(input("请输入一个正整数n:"))
sum = 0
factorial = 1
for i in range(1, n+1):
factorial *= i
sum += factorial
print("1到{}的阶乘之和为:{}".format(n, sum))
```
运行代码后,会提示你输入一个正整数n,然后输出1到n的阶乘之和。
相关问题
python递归求1到n的阶乘之和
可以使用递归的方式来求1到n的阶乘之和,代码如下:
``` 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 = 5
print(sum_factorial(n))
```
输出结果为153.
解释:在上述代码中,factorial(n)函数用于求n的阶乘,sum_factorial(n)函数用于求1到n的阶乘之和。当n为1时,阶乘之和为1,否则阶乘之和为n的阶乘加上n-1的阶乘之和,即factorial(n) + sum_factorial(n-1)。
用python求1到n的阶乘之和
好的,可以给你一个示例代码,用 Python 计算 1 到 n 的阶乘之和。以下是示例代码:
```python
def factorial(n):
result = 1
for i in range(1, n + 1):
result *= i
return result
def factorial_sum(n):
result = 0
for i in range(1, n + 1):
result += factorial(i)
return result
n = int(input("请输入一个正整数:"))
print("1到{}的阶乘之和为:{}".format(n, factorial_sum(n)))
```
在这个代码中,我们首先定义了一个名为 `factorial` 的函数,它的参数是一个正整数 `n`,返回值是 `n` 的阶乘。在函数中,我们使用 `for` 循环从 1 到 `n` 遍历所有的数,将它们的乘积保存到 `result` 变量中。然后,我们定义了另一个名为 `factorial_sum` 的函数,它的参数也是一个正整数 `n`,返回值是 1 到 `n` 的阶乘之和。在函数中,我们使用 `for` 循环遍历从 1 到 `n` 的所有数,调用 `factorial` 函数计算它们的阶乘,并将阶乘之和保存到 `result` 变量中。最后,我们通过输入函数 `input()` 获取用户输入的一个正整数 `n`,然后调用 `factorial_sum` 函数计算 1 到 `n` 的阶乘之和,并将结果输出到终端。