问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
大家可以先这样理解
第一个月--------1对兔子
第二个月--------1对兔子
第三个月--------2对兔子
第四个月--------3对兔子
第五个月--------5对兔子
第六个月--------8对兔子
由此可看出来规律:这个月的兔子数量=上一个月的数量+上上一个月的数量
但是前两个月兔子的对数是不变的
所以是从第三个月才开始这个规律的
我们假设先把月份定死为24个月
那么代码如下:
int[] arr = new int[24];
int i;
arr[0] = 1;
arr[1] = 1;
for (i = 0; i < arr.length; i++) {
if (i == 0 || i == 1) {
System.out.println("第" + (i+1) + "个月兔子数量为1对");
} else {
arr[i] = arr[i-1] + arr[i-2];
System.out.println("第" + (i+1) + "个月兔子数量为" + arr[i] + "对");
}
}
结果如下:
第1个月兔子数量为1对
第2个月兔子数量为1对
第3个月兔子数量为2对
第4个月兔子数量为3对
第5个月兔子数量为5对
第6个月兔子数量为8对
第7个月兔子数量为13对
第8个月兔子数量为21对
第9个月兔子数量为34对
第10个月兔子数量为55对
第11个月兔子数量为89对
第12个月兔子数量为144对
第13个月兔子数量为233对
第14个月兔子数量为377对
第15个月兔子数量为610对
第16个月兔子数量为987对
第17个月兔子数量为1597对
第18个月兔子数量为2584对
第19个月兔子数量为4181对
第20个月兔子数量为6765对
第21个月兔子数量为10946对
第22个月兔子数量为17711对
第23个月兔子数量为28657对
第24个月兔子数量为46368对