蓝桥杯JAVA语言B组_圆周率

本文介绍了一种使用连分数形式计算圆周率的方法,通过递归公式逐步逼近π的值。文中给出的程序实现了这种方法,并解释了最终输出圆周率近似值的原理。

标题:圆周率

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

 图1.png中所示,就是一种用连分数的形式表示的圆周率求法。
下面的程序实现了该求解方法。实际上数列的收敛对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", ______________));

答案:4/(x-1)

解析:

题目中有3个变量,x,n,i到最后n=10000;i=20001;所以结果一定为x变形得
n从10000开始x=2+20001*20001/111
然后x = 2+19999*19999/x
最后为 x = 2+1*1/x;
但题目为1+1/。。。所以x-1 = 4/π
故π = 4/(x-1),注意这个4一定不要少了,如果少了则白弄了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值