MENU

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

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

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

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

下面的程序实现了该求解方法。实际上数列的收敛对 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