1.寻找两个数相除,使商离黄金分割点0.618最近。

要求:分子分母不能同时为偶数。

         分子分母取值在【1,20】。

public class Test{
	public static void main(String[] args) {
		float fenzi = 0;
		float fenmu = 0;
		float shang = 0;
		float cha = 0;
		float min = 1.0f;
		int answermu = 0;
		int answerzi=0;
		for(fenmu=1;fenmu<=20;fenmu++) {
			for(fenzi=1;fenzi<=20;fenzi++) {
				if(fenzi%2==0&&fenmu%2==0)
					continue;
				shang=fenzi/fenmu;
				cha=shang-0.618f;
				cha=cha<0?0-cha:cha;
				if(cha<min) {
					min=cha;
					answermu=(int) fenmu;
					answerzi=(int) fenzi;
				}
			}
				
		}
		System.out.println(answermu);
		System.out.println(answerzi);	
	}
}

水仙花数定义:
1. 一定是3位数
2. 每一位的立方,加起来恰好是这个数本身,比如153=1*1*1+5*5*5+3*3*3

寻找所有的水仙花数


public class Test{
    public static void main(String[] args) {
    	 
        for (int i = 100; i < 1000; i++) {
 
            int baiwei = i / 100;
            int shiwei = i / 10 % 10;
            int gewei = i % 10;
            int cube = baiwei * baiwei * baiwei + shiwei * shiwei * shiwei + gewei * gewei * gewei;
            if (cube == i) 
                System.out.println("找到水仙花数:" + i);
            
 
        }
 
    }
 
}


public class Test{
    public static void main(String[] args) {
    	 int a = 0;
    	 int b = 0;
    	 int c = 0;
    	 int d = 0;
    	 
        for (a=-100; a<100; a++) {
        	for (b=-100; b<100; b++) {
        		for (c=-100; c<100; c++) {
        			for (d=-100; d<100; d++) {
        				if(a+b==8&&c-d==6&&a+c==14&&b+d==10){
                            
                            System.out.println("a:"+a);
                            System.out.println("b:"+b);
                            System.out.println("c:"+c);
                            System.out.println("d:"+d);
        			}
        		}
        	}
        	
        }
 
            
    }
 
}
}