继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

#5.求最接近黄金分割点0.618的组合数

慕神7329700
关注TA
已关注
手记 10
粉丝 1
获赞 0
public class TestNNN {
    public static void main(String[] args) {
        int a = 0;
        int b = 0;
        float min = 100;
        for (int i = 1; i <= 20; i++) {
            for (int j = 1; j <= 20; j++) {
                if (i % 2 == 0 && j % 2 == 0)
                    continue;
                //(float)(i/j):先做除法,再将商转为float;(float)i / j:先做类型转换,再做除法
                float value = (float)i/j - 0.618f;
                value = value < 0 ? 0 - value : value;
                if (value < min) {
                    min = value;
                    a = i;
                    b = j;
                }
            }
        }
        System.out.println("最接近的组合是:" + a + "/" + b + " = " + (float)a/b);
    }
}

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP