欢迎来到天天文库
浏览记录
ID:42685651
大小:49.00 KB
页数:10页
时间:2019-09-20
《部分Java经典基础代码》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Monkey_peach代码packagecom.sailor.game; /** *题目:猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个第二天早上又将剩 *下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第10天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。 *程序分析:采取逆向思维的方法,从后往前推断。 * *@authorSailor * */ publicclassMonkey_Peach{ publicstaticvoidmain
2、(String[]args){ int[]peach=newint[10]; peach[9]=1; //下面利用的是数组和循环将每天的桃子数量都求出来了 for(inti=peach.length-1;i>0;i--){ peach[i-1]=2*(peach[i]+1); } for(inti=0;i3、 } System.out.println("第一天的桃子数:"+getPeach_Num(10,1)); } //利用递归的方法来求第一天的桃子数,输入参数为天数和当天的桃子数,输出为第一天桃子数 publicstaticintgetPeach_Num(intday,intpeach_num){ if(day==1) returnpeach_num; elseif(day<14、5、peach_num<0) return0; 6、 else returngetPeach_Num(day-1,(peach_num+1)*2); } } /** *输出9*9口诀 * *@authorSailor * */publicclassTimes_Table{ publicstaticvoidmain(String[]args){ for(inti=1;i<=9;i++){ for(intj=1;j<=i;j++){ System.out.print(j+"*"+i+"="+(i*j)); System.out.print("t"); } S7、ystem.out.println(); } }} /** *题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。 *例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 * *@authorSailor * */ publicclassArmstrong_number{ publicstaticvoidmain(String[]args){ for(inti=100;i<1000;i++){ int8、n1,n2,n3; intk=i; n1=k/100; k%=100; n2=k/10; k%=10; n3=k; if(i==(getCube(n1)+getCube(n2)+getCube(n3))){ System.out.println(i); } } } publicstaticint9、getCube(intn){ returnn*n*n; } } /** *题目:输入两个正整数m和n,求其最大公约数和最小公倍数。程序分析:利用辗除法。 * *用辗转相除法求两个数的最大公约数的步骤如下:先用小的一个数除大的一个数,得第一个余数;再用第一个余数除小的一个数,得第二个余数; *又用第二个余数除第一个余数,得第三个余数; *这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的
3、 } System.out.println("第一天的桃子数:"+getPeach_Num(10,1)); } //利用递归的方法来求第一天的桃子数,输入参数为天数和当天的桃子数,输出为第一天桃子数 publicstaticintgetPeach_Num(intday,intpeach_num){ if(day==1) returnpeach_num; elseif(day<1
4、
5、peach_num<0) return0;
6、 else returngetPeach_Num(day-1,(peach_num+1)*2); } } /** *输出9*9口诀 * *@authorSailor * */publicclassTimes_Table{ publicstaticvoidmain(String[]args){ for(inti=1;i<=9;i++){ for(intj=1;j<=i;j++){ System.out.print(j+"*"+i+"="+(i*j)); System.out.print("t"); } S
7、ystem.out.println(); } }} /** *题目:打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。 *例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。 * *@authorSailor * */ publicclassArmstrong_number{ publicstaticvoidmain(String[]args){ for(inti=100;i<1000;i++){ int
8、n1,n2,n3; intk=i; n1=k/100; k%=100; n2=k/10; k%=10; n3=k; if(i==(getCube(n1)+getCube(n2)+getCube(n3))){ System.out.println(i); } } } publicstaticint
9、getCube(intn){ returnn*n*n; } } /** *题目:输入两个正整数m和n,求其最大公约数和最小公倍数。程序分析:利用辗除法。 * *用辗转相除法求两个数的最大公约数的步骤如下:先用小的一个数除大的一个数,得第一个余数;再用第一个余数除小的一个数,得第二个余数; *又用第二个余数除第一个余数,得第三个余数; *这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(如果最后的
此文档下载收益归作者所有