用Java中的递归调用方法写猴子吃桃问题
时间: 2023-08-08 15:09:45 浏览: 126
猴子吃桃问题时也可以使用递归-java.zip
好的,猴子吃桃问题可以用递归调用方法来实现。假设有一堆桃子,猴子第一天吃了其中的一半,并再多吃了一个。以后每天猴子都吃其中的一半,然后再多吃一个。到第n天时,想再吃时(即还剩下一些桃子),发现只剩下1个桃子了。请问这堆桃子原来有多少个?
下面是用Java实现的递归方法:
```java
public class MonkeyEatPeach {
public static void main(String[] args) {
int n = 10; // 假设猴子已经吃了10天
int peaches = eatPeach(n);
System.out.println("这堆桃子原来有 " + peaches + " 个");
}
public static int eatPeach(int n) {
if (n == 1) {
return 1;
} else {
return (eatPeach(n-1) + 1) * 2; // 递归调用
}
}
}
```
运行结果为:
```
这堆桃子原来有 1534 个
```
说明原来有1534个桃子。
阅读全文