编程计算斐波那契数列: F(n)= {a,n=1/b,n=2/f(n-1)+f(n-2),n>2&n为奇/ f(n-1)+f(n-2)+f(n-3),n>2&n为偶

时间:2023-01-08 15:59:06
#include<iostream>
using namespace std;
int main()
{
    int a,b,i,n,t,j,f[30];
    cin>>t;
    if(t<=10)
    {
      for(i=0;i<t;i++)
      {
          cin>>a>>b>>n;
            if(a<=10&&b<=10&&n<=30)
            {
                f[1]=a;
                f[2]=b;
                if(n>2)
                {


                    for(j=3;j<=n;j++)
                    {
                        if(j%2==1) f[j]=f[j-1]+f[j-2];
                        else if(j%2==0) f[j]=f[j-1]+f[j-2]+f[j-3];
                    }
                    if(n%2==1) f[n]=f[n-1]+f[n-2];
                    else if(n%2==0) f[n]=f[n-1]+f[n-2]+f[n-3];
                }
            }
            cout<<f[n]<<endl;
      }
    }
    return 0;
}