我的任务是编写一个程序来计算标题中提到的系列.一切似乎在程序中都运行良好,但方程式错误.
#include <iostream>
using namespace std;
int main()
{
double n;
double sum = 0;
cout << "Enter a number: ";
cin >> n;
for (double i = 1; i <= n; i++)
{
sum = (1 / i) + (2 / i - 1) + (3 / i - 2);
}
cout << "Sum is: " << sum << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
任何帮助,将不胜感激.谢谢!
你的等式中存在很多问题.首先,每次迭代都会将一个新值保存到sum中,这不是您想要的.其次,系列的其余部分在哪里?为什么你只存储前三个元素?
我建议使用此代码:
#include <iostream>
using namespace std;
int main()
{
double n;
double sum = 0;
cout << "Enter a number: ";
cin >> n;
for (double i = 1; i <= n; i++)
{
sum += i / (n-i+1);
}
cout << "Sum is: " << sum << endl;
return 0;
}
Run Code Online (Sandbox Code Playgroud)
这样,sum以零开始,并将系列的一个元素添加到每次迭代的总和中,从1/n开始,然后是1/n + 2 /(n-1),依此类推.
| 归档时间: |
|
| 查看次数: |
1328 次 |
| 最近记录: |