c++ - 计算具有给定精度的序列的总和
问题描述
#include <iostream>
#include <cstring>
using namespace std;
int main() {
system("chcp 1251>nul");
int i = 1;
double n;
cin >> n;
double eps = 0.00001;
double sum = 0;
double lastElementofSequence = 1;
do {
sum += lastElementofSequence;
lastElementofSequence *= pow(9,i)/pow(2*n+1,i);
i++;
} while (fabs(lastElementofSequence) > eps);
cout << sum << endl;
system("pause>nul");
return 0;
}
这就是问题所在,我无法弄清楚如何通过初步找到下一项来解决它!,而且不是每次都完整地枚举分子和分母。代码从上面,但感觉有些东西是不好,我会感谢审查,对于这么愚蠢的问题感到抱歉,因为我刚开始学习,我想了解如何计算这样的金额,因为简单的例子更容易
解决方案
#include <iostream>
#include <cstring>
using namespace std;
int main() {
system("chcp 1251>nul");
int i = 1;
double x;
cin >> x;
if (abs(x) >= 1) { cout << "The series is divergent"; }
else {
double eps = 0.000001;
double sum = 0;
double lastElementOfSequence=1;
do {
sum += lastElementOfSequence;
lastElementOfSequence *= -1 * x * (2 * i + 3) / (2 * i);
i++;
} while (fabs(lastElementOfSequence) > eps);
cout.precision(17);
cout << "sum=" << sum << endl;
}
system("pause>nul");
return 0;
}
我是否正确解决了这个问题
推荐阅读
- google-coral - 谷歌珊瑚加速器模块+微控制器
- cloud - 在数字海洋上仅使用一个液滴/实例进行自动缩放
- java - 一个键没有插入到哈希图中
- python - 如何在数据框中获取大于当前值的上一个日期
- clang - 如何为 LLVM IR 指令分配名称?
- node.js - 电子和快递
- .net - 如何在已部署的应用服务中获取 kubeconfig
- javascript - 如何在使用 jest 和酶的测试用例中从 react-hook-form 测试 useController 钩子
- python - 为什么wikipedia api在beautifulsoup4或其他东西上给我错误
- optimization - 如何解决 simulink 中的这个错误{矩阵尺寸必须一致。}?