算法
斐波那契数列为:
序 号:0 1 2 3 4 5 ...
斐波那契数:0 1 1 2 3 5 ...
根据给定的值n,输出第n个斐波那契数。
输入
第一行为测试数据的个数k
后面k行,每行一个n值(0<=n<=75)
输出
每个n值对应的斐波那契数。
样例输入
3
2
3
4
样例输出
1
2
3
谁能提供c#代码?谢谢
[解决办法]
int GetNumber( int n )
{
if( n < 2 )
return n;
else
return ( GetNumber( n - 1 ) + GetNumber( n - 2 ));
}
void main()
{
int n;
ReadIntfromFile( &n, yourFile );
for( int i = 0; i < n; ++ i )
{
int k;
ReadIntfromFile( &k, yourFile );
printf( "%d\r\n", GetNumber( k ));
}
}
#include <iostream>
typedef unsigned long long Long;
Long GetNumber( int n , Long sum , Long pre)
{
if( n <1 )
return sum;
else
return GetNumber(n-1,sum+pre,sum);
}
Long GetNumber(int n){
return GetNumber(n,0,1);
}
int main()
{
int n=75;
for(int i=0;i<n;i++)
std::cout<<i<<": "<<GetNumber(i)<<std::endl;
return 0;
}