输入n的值,输出1到n所有数的阶乘值的累加和
时间: 2023-05-31 15:02:11 浏览: 59
算法1:
1. 初始化累加和sum为0
2. 从1到n循环,每次计算当前数的阶乘值,并将其加入sum中
3. 循环结束后,输出sum作为结果
时间复杂度:O(n!)
Python代码:
n = int(input("请输入n的值:"))
sum = 0
for i in range(1, n+1):
factorial = 1
for j in range(1, i+1):
factorial *= j
sum += factorial
print(sum)
算法2:
1. 初始化累加和sum为1
2. 从1到n循环,每次将当前数i乘以sum,更新sum的值
3. 循环结束后,输出sum作为结果
时间复杂度:O(n)
Python代码:
n = int(input("请输入n的值:"))
sum = 1
for i in range(1, n+1):
sum *= i
print(sum)
相关问题
用python实现输入n进行累加和阶乘
好的,以下是实现代码:
```python
# 求n的累加和
def sum_n(n):
if n == 1:
return 1
else:
return n + sum_n(n-1)
# 求n的阶乘
def factorial_n(n):
if n == 1:
return 1
else:
return n * factorial_n(n-1)
# 输入n
n = int(input("请输入一个正整数n:"))
# 输出结果
print("1到n的累加和为:", sum_n(n))
print("n的阶乘为:", factorial_n(n))
```
你可以运行这段代码,输入一个正整数n,就可以得出1到n的累加和和n的阶乘。
用python编写程序,要求:输入一个正整数n,输出1到n每一数的阶乘的和
可以使用循环来计算每个数的阶乘,并将它们累加起来。下面是一个示例代码:
```python
n = int(input("请输入一个正整数n:"))
factorial_sum = 0
for i in range(1, n+1):
factorial = 1
for j in range(1, i+1):
factorial *= j
factorial_sum += factorial
print("1到{}每一数的阶乘的和为:{}".format(n, factorial_sum))
```
代码中首先输入一个正整数n,然后定义一个变量factorial_sum保存阶乘的和。接着使用for循环遍历1到n的每个数,内部再使用一个for循环计算每个数的阶乘,并将其累加到factorial_sum中。最后输出结果即可。