黄金分割取100位小数(蓝桥杯)
在网上发现一个大牛的神奇解法,当时我就震惊了,与大家分享一下。
java代码:
1
2
3
4
5
6
7
8
9
10
11
12
13
14import java.math.BigDecimal;
public class huangjin {
public static void main(String[] args) {
int i;
BigDecimal a = new BigDecimal(100);
for (i = 0; i < 500; i++) {
a = BigDecimal.ONE.add(BigDecimal.ONE.divide(a, 102, BigDecimal.ROUND_DOWN));
}
a = a.subtract(BigDecimal.ONE);
System.out.println(a);
}
}
解析:这是使用了java的大数方法,通过对公式的循环递归,然后取100位数即可。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 Dragon_SZ!