首页 > 编程 > C# > 正文

使用递归算法求第30位数的值

2020-01-24 02:47:59
字体:
来源:转载
供稿:网友

1,1,2,3,5,8,13,21,34,55....

求第30位数的值:

递归方法:

复制代码 代码如下:

class Program
    {
        static void Main(string[] args)
        {
            //找规律:
            //1,1,2,3,5,8,13,21,34,55,......
            int num = 30;
            Console.WriteLine(GetNum(30));
            Console.ReadKey();
        }
        /// <summary>
        /// 求第30位数的值
        /// </summary>
        /// <param name="i"></param>
        /// <returns></returns>
        private static int GetNum(int i)
        {
            if (i<=0)
            {
                return 0;
            }else if (i>0 && i<=2)
            {
                return 1;
            }
            else
            {
                return GetNum(i - 1) + GetNum(i - 2);
            }
        }

    }

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表