MENU

第五届蓝桥杯Java B——圆周率

March 9, 2019 • Read: 2894 • 算法阅读设置

数学发展历史上,圆周率的计算曾有许多有趣甚至是传奇的故事。其中许多方法都涉及无穷级数。

下图所示,就是一种用连分数的形式表示的圆周率求法

下面的程序实现了该求解方法。实际上数列的收敛对x的初始值 并不敏感。

结果打印出圆周率近似值(保留小数点后4位,并不一定与圆周率真值吻合)

    double x = 111; 
    for(int n = 10000; n >= 0; n--) {
        int i = 2 * n + 1;
        x = 2 + (i * i / x);
    }
    
    System.out.println(String.format("%.4f", ______________));
    double x = 111; 
    for(int n = 10000; n >= 0; n--) {
        int i = 2 * n + 1;
        x = 2 + (i * i / x);
    }
    
    System.out.println(String.format("%.4f", 4 / (x - 1));
Archives Tip
QR Code for this page
Tipping QR Code