一列数的规则如下 : 1 、 1 、 2 、 3 、 5 、 8 、 13 、 21 、 34…… 求第 30 位数是多少, 用递归算法实现

方法定义

public static int number(int i)
        {
            if (i < 0)
            {
                return 0;
            }
            else if (i <= 2)
            {
                return 1;
            }
            else
            {
                return number(i - 1) + number(i - 2);
            }
        }

 

方法调用

            int[] aa= { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 };

            foreach (var a in aa)
            {
                Console.WriteLine(number(a));
            }

            Console.WriteLine(number(30));
            Console.ReadLine();

 


版权声明:本文为qq_31584315原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。