目标效果:
代码:
/**
* 海滩上有一堆桃子,五只猴子来分。第一只猴子把这堆桃子平均分为五份,多了一个,这只猴子把多的一个扔入海中,拿走了一份。
第二只猴子把剩下的桃子又平均分成五份,又多了一个,它同样把多的一个扔入海中,拿走了一份。
第三、第四、第五只猴子都是这样做的。
问海滩上原来最少有多少个桃子?
* @author Vivinia
*
*/
public class distributePeach {
static double countPeach; //桃子总数
static int fivePeach; //问原来最少有多少个桃子,桃子越多,猴子分的越多,既然求最少,所以从第五只猴子拿的开始计算,从小遍历,并且要求在每次分配时,桃子总数减1除以5必须整除
public static void main(String args[]) {
for(fivePeach=3;;fivePeach++) { //第五只猴子拿走后剩下的个数,从4开始遍历,因为最少拿走一个,按平均分的话还有四个,这里不进行条件判断,只在后边使用是否整除进行判断,
countPeach=fivePeach; //countPeach一开始默认为第五只猴子拿走后剩下的桃子,本次剩余的桃子*5/4等=拿走前的桃子,再+1=上一只猴子拿走后剩下的桃子,以此循环
for(int i=0;i<5;i++) { //作为循环次数,共五只猴子拿桃子,

这篇博客主要介绍了如何使用Java编程实现经典的猴子分桃问题,通过代码详细解释了算法的逻辑和步骤,帮助读者理解并掌握该算法的实现。
最低0.47元/天 解锁文章
1541

被折叠的 条评论
为什么被折叠?



