Java练习题-02

1. 第 1 个人 10 岁,第 2 个比第 1 个人大 2 岁,第 3 个比第 2 个人大 2 岁,以此类推,计算第14个人多大?

public class work01 {

	public static void main(String[] args) {
		int age = 10;
		int people = 0;
		for(int i = 0;i<14;i++) {
			people = age+(i*2);
		}
		System.out.println("第14个人的年龄为:"+people);
	}

}
第14个人的年龄为:36

2. 打印出所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例 如:153 是一个“水仙花数”,因为 153 = 1 的三次方+5 的三次方+3 的三次方。在 2000 以内的数字。

public class work02 {

	public static void main(String[] args) {
		int x = 0;
		int y = 0;
		int z = 0;
		for(int i=99;i<1000;i++) {
			x = i/100;
			y = (i-x*100)/10;
			z = i-x*100-y*10;
			if(x*x*x+y*y*y+z*z*z==i) {
				System.out.println(i);
			}
		}
	}
}
153
370
371
407

3. 一个数如果恰好等于它的因子之和,这个数就称为“完数”。例如 6 = 1+2+3。编程找出 1000 以内的所有完数。(假如整数n除以m,结果是无余数的整数,那么我们称m就是n的因子。)

public class work03 {

	public static void main(String[] args) {
		for(int i=1;i<1000;i++) {
			int num = 0;
			for(int j = 1;j<i;j++) {
				if(i%j==0) {
					num+=j;
					}
				}
			if(i==num) {
				System.out.println(i);
			}
		}
	}
}
6
28
496

4. 有 1、2、3、4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?

public class work04 {

	public static void main(String[] args) {
		int n = 0;
		int sum = 0;
		for(int i =1;i<=4;i++) {
			for(int j =1;j<=4;j++) {
				for(int k =1 ;k<=4;k++) {
					if(i!=k&& i!=j && k!=j) {
						sum=i*100+j*10+k;
						n++;
						System.out.print(sum+"  ");
					}
				}
			}
			System.out.println("");
			}
		System.out.println("一共有:"+n+"个");
		}
}
123  124  132  134  142  143  
213  214  231  234  241  243  
312  314  321  324  341  342  
412  413  421  423  431  432  
一共有:24个

5. 猴子吃桃问题:猴子第一天摘下若干个桃子,当即吃了一半,还不瘾,又多吃了一个。第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的一半零一个。到第 10 天早上想再吃时,见只剩下一个桃子了。求第一天共摘了多少。

public class work05 {

	public static void main(String[] args) {
		int sum = 1;
		for(int i=1;i<10;i++) {
			sum=(sum+1)*2;
		}
		System.out.println("第一天共摘了"+sum+"个");
	}
}
第一天共摘了1534个

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值