您的位置:首页 > 编程语言 > Java开发

第六届蓝桥杯省赛Java语言C组_无穷分数

2017-03-04 21:47 302 查看
无穷分数

无穷的分数,有时会趋向于固定的数字。

请计算【图1.jpg】所示的无穷分数,要求四舍五入,精确到小数点后5位,小数位不足的补0。



请填写该浮点数,不能填写任何多余的内容。

解析:

此题需要用递归,题目的意思就是1/(1+2/(2+3/(3+(?)))),当到达一定的次数后,其实?这里的值已经可以微小到忽略不计了,经计算,如4/(4+?)的值大约等于0.9,所以在n等于15或更大是我们return 0.9或0.8,这就是递归的出口。最后会发现其实答案都是一样的。

public class 无穷分数 {
public static double f(double i) {
if (i == 15) {
return 0.8;
}

return i / (i + f(i+1));
// return 0;
}

public static void main(String[] args) {
System.out.printf("%.5f",f(1));
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: