首页 未分类

题目:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?

代码实现:

#include <iostream>

using namespace std;

// 兔子问题:起始有一对兔子,每对兔子到第三个月会生出一对新的兔子,求在n月份有多少对兔子; 

//方法:递归;  也可以分析月份与兔子对数的关系; 

int counts (int n);

int main()
{
    int  n;
    
    cout<<"请输入月份(1-12):"<<endl;
    
    while(cin>>n){
        
        if(n<=12&&n>=1)
            {
                
                cout<<"兔子总对数为:"<<counts(n)<<endl;
                break;
            }    
            
        cout<<"请输入正确的月份:"<<endl;
        
    }
    
    return 0;
    
} 

int counts (int n)
{
    if(n==1||n==2){
        return 1;
    }else{
        return counts(n-1)+counts(n-2);
    }
} 



文章评论