Sn=1+1/1!+1/2!+1/3!+1/4!+…+1/n!,主函数中输入n值,求sn的结果
时间: 2023-12-01 14:02:24 浏览: 142
三类组合图的色等价性定理 (2009年)
这是一个经典的数列求和问题,可以使用循环和阶乘函数来求解。下面是一个简单的C++程序,可以接收用户输入的n值,并计算Sn的值:
```cpp
#include <iostream>
#include <cmath>
using namespace std;
int factorial(int n) {
int result = 1;
for (int i = 1; i <= n; i++) {
result *= i;
}
return result;
}
int main() {
int n;
cout << "请输入一个正整数n:" << endl;
cin >> n;
double sum = 1.0;
for (int i = 1; i <= n; i++) {
sum += 1.0 / factorial(i);
}
cout << "Sn的结果为:" << sum << endl;
return 0;
}
```
这个程序首先定义了一个阶乘函数`factorial`,用于计算阶乘。然后在主函数中,通过循环计算Sn的值,并输出结果。在循环中,使用变量`sum`来保存当前的Sn值,每次循环将当前项的倒数加入到`sum`中。最后,输出结果即可。
请注意,由于使用了浮点数类型来保存结果,所以最终的输出可能会有一定的精度误差。如果需要更高的精度,可以使用其他数据类型或算法来实现。
阅读全文