首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

用递归求1,1,2,3,5,8,13,21,第三十个数是多少?该怎么处理

2012-02-04 
用递归求1,1,2,3,5,8,13,21,……第三十个数是多少?1,1,2,3,5,8,13,21,……用递归算法求第三十个数是多少?求解

用递归求1,1,2,3,5,8,13,21,……第三十个数是多少?
1,1,2,3,5,8,13,21,…… 用递归算法求第三十个数是多少? 求解决方案,谢谢!

[解决办法]
斐波那契static int Fibonacci(int index)
{
return index <= 2 ? 1 : Fibonacci(index - 1) + Fibonacci(index - 2);
}

Func<int, int> Fibonacci = null;
Fibonacci = i => i <= 2 ? 1 : Fibonacci(i - 1) + Fibonacci(i - 2);
Console.WriteLine(Fibonacci(30));
Console.ReadKey();

[解决办法]

private int fibo(int n) //写递归方法一般要有参数
{
if(n==1 || n==2)
{
return 1; //写递归方法应该首先就要确定什么时候递归终结
}
else
{
rerurn fibo(n-1)+fibo(n-2) //这个类第于高中的数学归纳法
}

}

热点排行