java经典50道编程题(很好练逻辑思维的题)(第五篇)

这篇博客包含了5个Java编程题目,涉及递归、数位运算、素数判断等逻辑问题。程序41是一个关于猴子分桃的递归问题,程序42通过循环寻找特定数的组合,程序43计算0-7能组成奇数的个数,程序44验证偶数是两个素数之和的定理,程序45和46则是数字操作和字符串连接的基础练习。每个程序都有详细的解析和代码实现。
摘要由CSDN通过智能技术生成

【程序41】

题目:海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子凭据分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份,第三、第四、第五只猴子都是这样做的,问海滩上原来最少有多少个桃子?

程序分析:有个疑问就是题目没说第五个猴子拿到的只有一个桃子,但是别人都知道??不理解

这其实就是一个递归问题每次*5 +1

这个用逆向思维

*          5     4      3     2      1

*    桃子个数     6     31    156   781     3906

*猴子拿的个数     1      6    31    156     781

public class Programme41 {

public static void main(String[] args) {

System.out.println(Peach(1));;

}

private static int Peach(inti) {

if (i==5) {

return 6;

}

returnPeach(i+1)*5+1;

}

}

【程序42】

题目:809*??=800*??+9*??+1

其中??代表的两位数,8*??的结果为两位数,9*??的结果为3位数。求??代表的两位数,及809*??后的结果。

程序解析:for循环的使用

public class Programme42 {

public static void main(String[] args) {

String result="";

for (inti = 100; i < 1000;i++) {

if (809i==800i+9*i+1) {

result=i+" ";

}

}

if (result.equals("")) {

System.out.println(“没有合适的数”);

}else {

System.out.println(“合适的数有:”+result);

}

}

}

【程序43】

题目:求0—7所能组成的奇数个数。

*程序分析:最少也是1位数,最多能组成8位的数字

*       第一位不能为零,最后一位不能是偶数

*       0到7有四个奇数

*       这里用累加求和

public class Programme43 {

public static void main(String[] args) {

int n = 8;//位数

int sum = 0;//总和

// 1位数情况

sum += n / 2;

// 2位数情

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值