19. 一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10
次落地时,共经过多少米?第10次反弹多高?
20. 古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个
月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?(要求输出前20个月的兔子数) 程序分析: 兔子的规律为数列1,1,2,3,5,8,13,21,34.... 第三个数开始,后一个数是前两个数之和。
21. 编写一个程序,实现十进制和二进制的转换。如果输入的是十进制,则转换为二进制。
如果输入的是二进制,则计算为十进制。
增加循环选项,使得可重复计算,如下图:
参考代码:
long october=0; String binary=\ String choice=\
//十进制和二进制的转换
Scanner in= new Scanner(System.in); in.useDelimiter(\while(choice.equals(\{
System.out.println(\进制转换计算----\System.out.println(\十进制-->二进制\System.out.println(\二进制-->十进制\
System.out.println(\请输入要选择的功能序号:\int funNo=in.nextInt(); if (funNo==1){
System.out.println(\要转换的十进制数是:\october = in.nextLong(); int i=0;
while (october>=2){
int temp=(int)(october % 2); october=october/2;
binary =\ i++; }
binary =\
System.out.println(\转换后的二进制为:\}
else if(funNo==2){
System.out.println(\要转换的二进制数是:\binary = in.next();
for (int i=0;i System.out.println(\转换后的十进制是:\} else System.out.println(\输入错误,请重新输入!\ System.out.println(\是否继续下一次转换(y/n):\ choice=in.next(); } 22. 在屏幕上输出九九乘法表。 23. 判断101到200之间有多少个素数,把这些素数分别输出。 提示:用这个数去分别除2到sqrt(这个数),如果有能被整除的,则表明不是素数,否则就是。本练习要用到嵌套循环。 判断一个数是否素数的关键代码可参考: int x=199; int i; for(i=2;i System.out.println(x+\不是素数.\); 24. 在屏幕上打印出一个菱形,如下图所示: 提示:本练习要用到嵌套循环。最关键的是发现每行中空格多少个,递增循环多少,递减循环多少。部分代码可参考下面: for(int i=0; i < 7; i++){ for(int k=7-i; k>0; k--){ System.out.print(\); } for(int m=1; m<=i+1; m++){ System.out.print(m+\); } for(int n=i; n>0; n--){ System.out.print(n+\); } System.out.println(); }
相关推荐: