古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少对?(输出前20月即可)
针对该问题主要寻找规律
第一月 1对 第二月1对 第三月 2对 第四月 3对 第五月 5对 第6月 8对.......
兔子在第三月的时候就具有生殖能力
规律: 从第三个书数开始前两个月相加的和对应下一个数
eg:1+1=2,2+3+5..........
开始分析:
1.这里只有从第三个数开始符合上面的规律,所以作为萌新的我选择直接输出一二月的结果
学到数组的同学可以利用数组,这样就不用单个输出.
2.(先大概整理一下自己需要用到的语法)因为我们需要打印20条输出结果,所以我们需要用到for循环,if语句等
3.现在需要解决的就只有如何实现前两个相加等后一个
第3个月 x3=1+1,x3=2
第4个月 x4=2(x3)+1,x4=3
第5个月 x5=3(x4)+2(x3),x5=5
第6个月 x6=5(x5)+3(x4) ,x6=8
由此可以看出 :假设a=1,b=1,所以x3=a+b,x4=x3(a+b)+b
在这里的X3很明显就可以利用a去代替它,a会由原本的1变成x3
所以就有 a=a+b,但是下面的X4无法在用a去表示,假如继续用a就会导致b
这个变量无法变值,所以再写一条 b=a+b;
在3的时候用 a=a+b
在4的时候用 b=a+b
在5的时候用 a=a+b
........ 所以这里就需要我们分开奇偶进行输出
到这里分析就完毕了,细节方面需要各位自己进行修补