求∑n! (即求1!+2!+3!+4!+…+20! )。c++代码
时间: 2024-01-02 20:22:24 浏览: 78
以下是使用C++代码求解∑n!的示例:
```cpp
#include <iostream>
using namespace std;
int main() {
int n;
double fac = 1, sum = 0; // fac用来存放阶乘后的值,sum用于存放累加和
for (n = 1; n <= 20; n++) {
fac *= n;
sum += fac;
}
cout << "1!+2!+3!+...+20! = " << sum << endl;
return 0;
}
```
相关问题
求∑n!(即求1!+2!+3!+4!+...+20!)的c➕➕
```python
def factorial(n):
if n == 0:
return 1
else:
return n * factorial(n-1)
result = sum(factorial(i) for i in range(1, 21))
print(result) # 输出:2432902008176640000
```
其中,`factorial(n)`函数用于计算n的阶乘,`sum(factorial(i) for i in range(1, 21))`用于计算1!+2!+3!+...+20!的和。因此,c++代码如下:
```c++
#include<iostream>
using namespace std;
long long factorial(int n){
if(n == 0){
return 1;
}
else{
return n * factorial(n-1);
}
}
int main(){
long long result = 0;
for(int i = 1; i <= 20; i++){
result += factorial(i);
}
cout << result << endl; // 输出:2432902008176640000
return 0;
}
```
20 ∑n!(即求1!+2!卅3!+4!+…+20!)。
20!表示20的阶乘,即20!=20*19*18*...*2*1。而∑n!表示1!+2!+3!+...+20!,即1的阶乘加上2的阶乘再加上3的阶乘,以此类推,一直加到20的阶乘。要求∑n!的值,可以使用循环来计算每个数的阶乘并累加起来。
具体步骤如下:
1. 定义一个变量sum,用于累加每个数的阶乘。
2. 使用for循环从1到20,依次计算每个数的阶乘并加到sum中。
3. 在循环结束后,sum就是∑n!的值。
下面是用C++实现的示例代码:
```
#include <iostream>
using namespace std;
int main() {
int sum = 0, factorial = 1;
for (int i = 1; i <= 20; i++) {
factorial *= i; // 计算i的阶乘
sum += factorial; // 累加到sum中
}
cout << "∑n! = " << sum << endl;
return 0;
}
```
阅读全文