首页 > 代码库 > 递归求斐波那契数
递归求斐波那契数
斐波那契数列主要思想是利用前两个数求和算出下一个数,利用函数的递归思想,F(n)=F(n-1)+F(n-2),F(n)先搁置,计算F(n-1),要计算F(n-1)就要先计算F(n-2)和F(n-3),依次递归下去,直到第一第二位数,这两个数是已知的,这样就可以回去一层一层的算出F(3)、F(4)、F(5)....F(n-2)、F(n-1),最后得到F(n)的值。
1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 using System.Data; 6 using System.Data.SqlClient; 7 //递归算法求斐波那契数列 8 namespace test3 9 {10 class Program11 {12 static void Main(string[] args){13 long i=Convert.ToInt64(Console.ReadLine());//读入位数14 Console.WriteLine("第{0}位斐波那契数为:{1}",i, Foo(6));15 }16 public static int Foo(int i) {17 if (i <= 0) return 0;18 else if (i > 0 && i <= 2) return 1;19 else return Foo(i - 1) + Foo(i - 2);20 }21 }22 }
PS:Console.Read()用来读取输入的第一个字符,Console.ReadLine()用来读取一行字符串,Console.ReadKey()也是用来读取第一个字符,但不需要敲回车键就能继续执行代码。另外不管是Read()或Write()输入输出的都是字符型,数字需要用Convert()函数转换得来。
递归求斐波那契数
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。