HOW2J——JAVA基础——控制流程综合练习

来源:互联网 发布:dvp14ss11ti编程手册 编辑:程序博客网 时间:2024/05/17 23:08
public class ComprehensivePractice {public static void main(String[] args) {/*黄金分割点寻找某两个数相除,其结果 离黄金分割点 0.618最近分母和分子不能同时为偶数分母和分子 取值范围在[1-20] */final double GOLDEN_SECTION_RATIO=0.618;int i,j,finalI=1,finalJ=1;double diff,minDiff=1;for(i=1;i<20;i++) //分子i从1至19{for(j=i+1;j<=20;) //分母j从i+1开始{diff=Math.abs((double)i/j-GOLDEN_SECTION_RATIO);if(diff<minDiff){//如果i/j更接近0.618finalI=i;finalJ=j;minDiff=diff;}if(i%2==0) //如果分子是偶数,分母只取i之后的奇数j+=2;elsej++;}}System.out.println("距离黄金分割点0.618最近的两个数相除是"+finalI+"/"+finalJ+"="+(double)finalI/finalJ);/*水仙花数定义:1. 一定是3位数;2. 每一位的立方,加起来恰好是这个数本身寻找所有的水仙花数*/int a,b,c;for(int n=100;n<1000;n++){a=n/100;b=n%100/10;c=n%10;if(n==a*a*a+b*b*b+c*c*c){System.out.println(n);}}/*小学算术题,求a、b、c、da + b = 8+   +  c - d = 6‖   ‖14  10*/for(a=0;a<=8;a++){b=8-a;c=14-a;int d=10-b;if(c-d==6){System.out.println("a、b、c、d分别为:"+a+"、"+b+"、"+c+"、"+d);break;}}}}

阅读全文
0 0