求1+2!+3!+…+n!的和。 输入 正整数n(n=10)+ 出 1+2!+3!+…+n!的和(结果为整数形式)
时间: 2023-11-17 20:00:25 浏览: 10
使用递归函数调用阶乘方法求和,代码如下:
```python
def jie(n):
if n == 1:
return 1
else:
return n*jie(n-1)
n = int(input())
sum = 0
if n < 1 or n > 40:
print("请重新输入数据")
else:
for i in range(1, n+1):
sum += jie(i)
print(sum)
```
相关问题
描述 求1+2!+3!+…+n!的和。 输入 正整数n (n〈=10) 输出 1+2!+3!+…+n!的和(结果为整数形式)
这道题目要求我们计算1到n的阶乘之和,即1!+2!+3!+...+n!。我们可以使用循环来计算每个数的阶乘,并将它们相加得到最终结果。具体步骤如下:
1. 定义一个变量sum,用于存储阶乘之和,初始值为0。
2. 使用循环从1到n,计算每个数的阶乘,并将它们加到sum中。
3. 输出sum的值。
代码如下:
```
#include <stdio.h>
int main()
{
int n, i, j, fact = 1, sum = 0;
printf("请输入一个正整数n:");
scanf("%d", &n);
for (i = 1; i <= n; i++) {
fact = 1;
for (j = 1; j <= i; j++) {
fact *= j;
}
sum += fact;
}
printf("1!+2!+3!+...+n!=%d\n", sum);
return 0;
}
```
求1+2!+3!+...+n!的和。 输入 正整数n(n〈=10) 输出 1+2!+3!+...+n!的和 (结果为整数形式)
求1+2!+3!+...+n!的和,其中n为正整数。
代码实现如下(C语言):
```
#include <stdio.h>
int main()
{
int n, i, j, sum = 0, fac = 1;
printf("请输入一个正整数n:");
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
fac = 1;
for (j = 1; j <= i; j++)
{
fac *= j;
}
sum += fac;
}
printf("1+2!+3!+...+n!的和为:%d\n", sum);
return 0;
}
```
阅读全文