一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少,用递归算法实现。
using namespace std;
int Fibonacci(int n1, int n2, int n);
int main()
{
cout << Fibonacci(1, 1, 30);
return 0;
}
int Fibonacci(int n1, int n2, int n)
{
int sum = n1 + n2;
if(n == 3)
{
return sum;
}
if(n == 2)
{
return n2;
}
if(n == 1)
{
return n1;
}
return Fibonacci(n2, sum, n-1);
}
func fib(n){
if(n == 1){
return 1
}
if(n == 2){
return 1
}
return fib(n-1) + fib(n-2)
}