題目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一
对兔子,假如兔子都不死,问每个月的兔子总数为多少?
/**
* @author 三一
* @time 2018-5-6
*/
class Test {
public static void main(String[] args) {
// 用数组记录每一个兔子大小的个数
long a[] = new long[3];
a[0] = 0;// 一月大小
a[1] = 0;// 二月大小
a[2] = 0;// 大于或者等于三月大小
long s = 0;// 定义一个中间变量
long sum = 0;// 对数
for (int i = 1; i < 100; i++) {
s = a[0];
// 计算三月大小的兔子的个数:二月的+本三月的
a[2] = a[2] + a[1];
// 计算新生的兔子的个数,即一月大小的
if (i == 1) {
a[0] = 1;
} else {
a[0] = a[2];
}
// 计算二月大小的兔子:为初始的时候一月的数量
a[1] = s;
sum = a[0] + a[1] + a[2];// 总数对
System.out.println("第" + i + "月后," + "一共有:" + sum + "对," + "总数为:" + 2 * sum);
}
}
}