java兔子繁衍问题
时间: 2023-11-10 14:00:08 浏览: 40
兔子繁衍问题是指一对兔子从出生后第3个月起每个月都能生一对兔子,而小兔子长到第3个月后每个月又能生一对兔子。假设没有发生死亡,那么第n个月时兔子的总数可以通过斐波那契数列来计算。斐波那契数列的规律是每个数都是前两个数的和,即F(n) = F(n-1) + F(n-2)。初始条件是F(1) = F(2) = 1。
对于java兔子繁衍问题,我们需要计算第20个月时兔子的总数。根据斐波那契数列的规律,我们可以使用循环或递归的方式来计算第20个月时兔子的总数。
方法1: 使用循环计算斐波那契数列
```java
int fib(int n) {
if (n <= 2) {
return 1;
}
int prev = 1;
int curr = 1;
for (int i = 3; i <= n; i++) {
int temp = curr;
curr = prev + curr;
prev = temp;
}
return curr;
}
int totalRabbits = fib(20);
System.out.println("第20个月时共有 " + totalRabbits + " 对兔子。");
```
方法2: 使用递归计算斐波那契数列
```java
int fib(int n) {
if (n <= 2) {
return 1;
}
return fib(n-1) + fib(n-2);
}
int totalRabbits = fib(20);
System.out.println("第20个月时共有 " + totalRabbits + " 对兔子。");
```