题目:
计算 π / 4 = 1 - 1 / 3 + 1 / 5 - 1 / 7 + ...,直到最后一项小于 10 ^ -6。
思路:
数列的通项可以表示为 1 / (2 × i + 1 ),观察可知,当 i 是 2 的倍数时,该项为正,否则为负。可以用循环实现累加,每次累加之后判断是否满足条件。
代码:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double sum = 0.0, term = 0.0;
int i = 0;
do {
term = 1.0 / (i * 2 + 1);
if (i % 2 == 0) {
sum += term;
} else {
sum -= term;
}
++i;
} while (term > 1e-6);
cout << setprecision(6) << fixed << sum << endl;
return 0;
}