实验4-1-10 兔子繁衍问题 (15分)
一对兔子,从出生后第3个月起每个月都生一对兔子。小兔子长到第3个月后每个月又生一对兔子。假如兔子都不死,请问第1个月出生的一对兔子,至少需要繁衍到第几个月时兔子总数才可以达到N对?
/*
先推算前六个月兔子对数
月 对数
1 1
2 1
3 2
4 3
5 5
6 8
7 13
可以观察出从第三个月开始,兔子对数为前两个月对数之和
*/
#include<stdio.h>
int main()
{
int N;
scanf("%d",&N);//输入的兔子数
int day=0;//需要的天数
int day1= 1;int day2= 1;
int count;//兔子计数器
if(N==1)
{
day = 1;
}else if(N>1)
{
count = 1;day=2;//此时兔子数量起步是2,天数起步两天,然后执行下面的while循环
while(count<N)
{
count = day1 + day2;//实现兔子数的累加
//实现对前两个月兔子数量的赋值
day1 = day2;
day2 = count;
day++;
}
}
printf("%d",day);
return 0;
}