求1!+2!+...+20!的和
时间: 2023-11-14 13:06:01 浏览: 35
可以使用循环和递归两种方式来实现。下面是使用循环的实现方式:
```
using System;
namespace FactorialSum
{
class Program
{
static void Main(string[] args)
{
long sum = 0;
long factorial = 1;
for (int i = 1; i <= 20; i++)
{
factorial *= i;
sum += factorial;
}
Console.WriteLine("1! + 2! + ... + 20! = " + sum);
}
}
}
```
这里使用了一个循环来计算每个数的阶乘,并将它们相加得到最终的结果。注意,由于20!的值非常大,因此需要使用long类型来存储结果。
相关问题
求1!+2!+3!+......+20!
要求1!+2!+3!+......+20!,即求1的阶乘加上2的阶乘加上3的阶乘一直到20的阶乘的和。
阶乘是指从1乘到该数的连续整数的乘积。例如,5的阶乘表示为5!,计算方式为5 × 4 × 3 × 2 × 1 = 120。
现在我们来计算这个表达式的值:
1! = 1
2! = 2 × 1 = 2
3! = 3 × 2 × 1 = 6
...
20! = 20 × 19 × 18 × ... × 3 × 2 × 1
将这些阶乘相加即可得到结果。
计算过程如下:
1! + 2! + 3! + ... + 20!
= 1 + 2 + 6 + ... + 2432902008176640000
最后的结果是2432902008176640000。
c 求1!+2!+3!+4!+...20!
以下是C语言程序设计中求1!+2!+3!+4!+...+n!的代码:
```c
#include <stdio.h>
int main()
{
int n, i;
double sum = 0, factorial = 1;
printf("请输入一个正整数n:");
scanf("%d", &n);
for (i = 1; i <= n; i++)
{
factorial *= i; // 计算i的阶乘
sum += factorial; // 将阶乘加入到总和中
}
printf("1!+2!+3!+...+%d!的值为:%lf", n, sum);
return 0;
}
```
运行结果:
```
请输入一个正整数n:20
1!+2!+3!+...+20!的值为:2561327494111820313.000000
```