【题解】:先列出前几个月的兔子数量,发现规律,就是一个斐波那契数列
第1个月兔子数量为1对
第2个月兔子数量为1对
第3个月兔子数量为2对
第4个月兔子数量为3对
第5个月兔子数量为5对
第6个月兔子数量为8对
第7个月兔子数量为13对
第8个月兔子数量为21对
可以看出从第三个月开始,当月兔子数量为上个月与上上个月兔子数量相加所得,由此可得代码设计为
/**
* ZAY 2024.1.3
* */
public class Rabbit {
public static void main(String[] args) {
System.out.println("第1个月兔子数量为1对");
System.out.println("第2个月兔子数量为1对");
int a = 0;//当月
int x = 1;//上个月
int y = 1;//上上个月
int mounth = 30;
for (int i = 3;i<=mounth;i++){
a = x + y;
System.out.println("第"+i+"个月兔子数量为"+a+"对");
y = x;//将上个月数量赋给上上个月
x = a;//将当月数量赋给上个月
}
}
}
附上斐波那契数列代码
public class Fibonacci {
public static int fibonacci(int n) {
if (n <= 1) {
return n;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}
public static void main(String[] args) {
int n = 10;
for (int i = 0; i <= n; i++) {
System.out.print(fibonacci(i) + " ");
}
}
}