您的位置首页百科知识

c#题目,用递归方法做斐波纳契数列,求解答

问题补充说明:斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……这个数列从第三项开始,每一项都等于前两项之和。请用递归算法编写函数实现求该数列的前n项和。... 斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、…… 这个数列从第三项开始,每一项都等于前两项之和。请用递归算法编写函数实现求该数列的前n项和。 展开

你好,软糖来回答咯~~

c#题目,用递归方法做斐波纳契数列,求解答

代码如下

(注意递归运乐利项行很慢,超过30就很费时360问答间了)

static voi成何制岁d Main(string[] args) {

            Console.WriteLin孙宁续赶色春岁损预观阻e("// 输入 x 退出本程序");

            //请用户输入数字,循环直到正确输入

            int 个数 = 10;

            b承号附错宁扩ool 结果 = false;

            string 输入内容 = "";

            while (结果 == false) {

                Console.Ba它依守ckgroundColor = ConsoleColor.DarkBlue;

                C田谓onsole.Write("请输入斐波那契数列的数量:  ");

                C没立虽问货建行onsole.BackgroundColor = ***.Black;

                输入内容 = Console川去想款扬装.ReadLine();

                if (输入内容.Trim(' ').ToLow反企零er() == "x") { Environment.Exit(0); }

                if (输入内容.Trim(' ').ToLower() == "") { continue; }

                结陈果 = 判断整数是否合法些友停感只风(输入内容);

            }

            个先统数 = int.Parse(输入内容);

            C对自三过士第垂亚路装onsole.BackgroundColor = ConsoleColo激金语虽及茶权他品r.DarkGreen;

            C跑爱刻伟叫决onsole.ForegroundColor = ConsoleColor.White;

            Console.WriteLine("从 1 到 {0} 的斐波那契数列之和为:  {1}", 个数, 递归求和(个数));

            C业亲长态怎万会天onsole.BackgroundColor = ***.Black;

            //退出

            Console.Backgr普行很功坚刘精本oundColor = ConsoleColor.DarkCyan;

            Console.Write("按任意键退出...");

            Console.ReadKey();

        }

        static long 递归求和(int n) {

            i胜形希赶f (n.Equals(0) || n.Equals(1)) { return 1; }

            return (递归求和(n - 1) + 递归求和(n - 2));

        }

        static bool 判断整数是否合法(string 输入内容) {

            int 转换后的数字;

            bool 是数字 = int.TryParse(输入内容, out 转换后的数字);

            if (是数字 == false)                 //转换数字失败就再次请求输入正确值。

            { Console.WriteLine("整数不正确!"); return false; } else {

                if (转换后的数字 < 0) {

                    Console.WriteLine("整数必须大于 0!"); return false;

                } else {

                    return true;

                }               

            }

        }

满意请采纳,谢谢。