C++小母牛的问题

来源:百度知道 编辑:UC知道 时间:2024/05/26 17:39:13
若一头母牛,从出生起第4个年头开始生一头小母牛,按次规律,第N年有多少头母牛?
悬赏分:5 - 解决时间:2008-12-13 12:47
若一头母牛,从出生起第4个年头开始生一头小母牛,按次规律,第N年有多少头母牛?
用递推方法是这样吗:
#include <iostream>
using namespace std;

void main()
{
int n;
long a=1, b=1, c=1, temp;
cout <<"please input a value:\n";
cin >>n;

for(int i=4; i<=n; i++){
temp=a+c; a=b; b=c; c=temp;
}
cout << c <<endl;
}
请高手给解释一下这个程序~~~~谢谢

按a b c

第一年:
1 1 1
第二年
1 1 1
第三年
1 1 1
第四年(for开始)
1 1 2
第五年
1 2 3
第六年
2 3 4
第七年
3 4 6
第八年
4 6 9
。。。。
所以a代表下一年可以生的牛的个数
b相当于一个缓存,从c到b到a要用3年,所以,第四年可以生的牛的个数就是三年前的牛的个数
c代表目前的牛的个数