Java死循环练习

需求:

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

代码:

public class Test3 {
    public static void main(String[] args) {
        int num = getNum();
        System.out.println("桃子数量为: "+num);
    }
    //定义方法返回桃子的数量
    public  static int getNum() {
        int count =0;//桃子数
        int number =0;//为下只猴子剩的桃子数
        while (true) {//从零开始不断增加桃子数量直到符合要求为止
            count ++;
            int j =count;//临时变量
            for (int i=0;i<5;i++) {//循环判断符合五只猴子去桃子的规则
                if ((j - 1) % 5 == 0 ) {
                    number = (j-1)/5*4;//为下一个猴子剩的桃子数
                    j =number;
                    if (number > 0 && i == 4) {//循环到最后都符合规则就返回桃子数
                        return count;
                    }
                } else {
                    break;
                }
            }

        }
    }
}

结果为:

猜你喜欢

转载自blog.csdn.net/xilin6664/article/details/89403128