一列数的规则如下: 1、1、2、3、5、8、13、21、34...... 求第30位数是多少, 用递归算法实现。
public class MainClass //定义一个类
{
public static void Main() //主函数入口,将输出结果
{
Console.WriteLine(Foo(30));
}
public static int Foo(int i) //递归算法,从数字的规则我们知道数字都是有前一个数字加上前加一个数字相加的来的也就是F(I)=F(I-1)+F(I-2),这样就有了初始的算法,然后规定下初始的算法就形成了一个较为完整的函数。
{
if (i <= 0)
return 0;
else if(i > 0 && i <= 2)
return 1;
else return Foo(i -1) + Foo(i - 2);
}
}
转载于:https://blog.51cto.com/moment/304888