黑马程序员技术交流社区

标题: c# [打印本页]

作者: 568839480    时间: 2013-12-27 10:46
标题: c#
本帖最后由 568839480 于 2013-12-27 10:59 编辑

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



作者: 伱涐的距离    时间: 2013-12-27 10:56
class Program     {         static void Main(string[] args)         {             Console.WriteLine(Foo(30));          }         public static int Foo(int i)         {             if (i <= 0)                 return 0;             else if (i > 0 && i <= 2)                 return 1;             else return Foo(i - 1) + Foo(i - 2);          }     }
作者: 许庭洲    时间: 2013-12-27 11:04
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace 递归算法
{
      calss Program
      {
            static void Main(string[] args)
            {
                     //一列数的规则如下:1、1、2、3、5、8、13、21、34……求第30位数是多少?
                    Console.WriteLine("请输入一个数字,例如30");
                    string s= Console.ReadLine();
                    while(s== "30")
                    {
                          int number = Convert.ToInt32(s);
                          Console.WriteLine("{0}",S(30));
                    }
            }
            public static int S(int i)         
            {            
                   if (i <= 0)           
                            return 0;            
                  else if (i > 0 && i <= 2)                 
                            return 1;            
                  else return S(i - 1) + S(i - 2);         
             }     
       }
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2