zltzlt 发表于 2020-1-8 21:08:09

C++ 求圆周率

C++ 求圆周率

题目要求

若令 s = 1 / (1 * 1) + 1 / (2 * 2) / 1 (3 * 3) + ...... + 1 / (n * n),
则 π2 = 6 * s。

读入数 n,求利用上述式子求 π 的近似值,保留至小数点后 10 位。

我的解答

// 求圆周率

#include <iostream>
#include <cmath>
#include <iomanip>

using namespace std;

int main() {
        int n, i;
        double s = 0.0, r;
        cin >> n;
        for (i = 1; i <= n; i++)
        {
                s += 1.0 / (i * i);
        }
        r = sqrt(s * 6);
        cout << fixed << setprecision(10) << r;
}

执行结果

50000
3.1415702709
页: [1]
查看完整版本: C++ 求圆周率