最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C#采用遞歸實現(xiàn)階乘的方法

 更新時間:2014年08月20日 10:59:14   投稿:shichen2014  
這篇文章主要介紹了C#采用遞歸實現(xiàn)階乘的方法,很有借鑒價值的一個算法技巧,需要的朋友可以參考下

本文實例講述了C#采用遞歸實現(xiàn)階乘的方法,供大家參考之用。通常來說,如果想實現(xiàn)一個階乘,比如6 * 5 * 4 * 3 * 2 * 1,首先想到的可能是循環(huán)遍歷。

如下示例所示:

class Program
{
    static void Main(string[] args)
    {
      Console.WriteLine("請輸入一個數(shù)");
      int number = Convert.ToInt32(Console.ReadLine());
      double result = JieCheng(number);
      Console.WriteLine(number.ToString() + "的階乘結(jié)果是:" + result.ToString());
      Console.ReadKey();
    }
 
    public static double JieCheng(int number)
    {
      if (number == 0)
      {
        return 0;
      }
 
      //初始值必須設(shè)置為1
      double result = 1;
 
      for (int i = number; i >= 1; i--)
      {
        result = result*i;
      }
      return result;
    }
}

但以上的階乘還有一種實現(xiàn)方式:6 * (6-1) * (6-2) * (6-3) * (6-4) * (6-5) 或 6 * (6-1) * (5-1) * (4-1) * (3-1) * (2-1),也就是說后面數(shù)總是由前面的數(shù)減1得到的。

當(dāng)實現(xiàn)的邏輯相同,且內(nèi)部遞歸方法的參數(shù)可以由外部遞歸方法的參數(shù),經(jīng)過某種算法而獲得,這正是遞歸登場的時候。

實現(xiàn)代碼如下:

public static double JieCheng(int number)
{
  if (number == 0)
  {
 return 1;
  }

  return number * JieCheng(number - 1);
}

希望本文所述實例對學(xué)習(xí)算法的朋友能有所幫助。

相關(guān)文章

  • Unity實現(xiàn)OCR文字識別功能

    Unity實現(xiàn)OCR文字識別功能

    這篇文章主要介紹了通過Unity接入百度AI接口,實現(xiàn)OCR文字識別功能,文中的實現(xiàn)步驟講解詳細(xì),對我們學(xué)習(xí)或工作有一定的參考價值,需要的可以了解一下
    2022-01-01
  • 關(guān)于C#生成MongoDB中ObjectId的實現(xiàn)方法

    關(guān)于C#生成MongoDB中ObjectId的實現(xiàn)方法

    本篇文章小編為大家介紹,關(guān)于C#生成MongoDB中ObjectId的實現(xiàn)方法。需要的朋友參考下
    2013-04-04
  • C#中DataTable實現(xiàn)行列轉(zhuǎn)換的方法

    C#中DataTable實現(xiàn)行列轉(zhuǎn)換的方法

    這篇文章主要介紹了C#中DataTable實現(xiàn)行列轉(zhuǎn)換的方法,實例分析了C#操作DataTable的相關(guān)技巧,非常具有實用價值,需要的朋友可以參考下
    2015-04-04
  • C#實現(xiàn)將數(shù)組內(nèi)元素打亂順序的方法

    C#實現(xiàn)將數(shù)組內(nèi)元素打亂順序的方法

    這篇文章主要介紹了C#實現(xiàn)將數(shù)組內(nèi)元素打亂順序的方法,涉及C#數(shù)組遍歷及隨機(jī)數(shù)操作的相關(guān)技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-08-08
  • C++中const的實現(xiàn)細(xì)節(jié)介紹(C,C#同理)

    C++中const的實現(xiàn)細(xì)節(jié)介紹(C,C#同理)

    本篇文章主要是對C++中const的實現(xiàn)細(xì)節(jié)進(jìn)行了詳細(xì)的介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • Unity使用LineRender實現(xiàn)繪畫功能

    Unity使用LineRender實現(xiàn)繪畫功能

    這篇文章主要為大家詳細(xì)介紹了Unity使用LineRender實現(xiàn)繪畫功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • C# 使用AspriseOCR.dll實現(xiàn)驗證碼識別

    C# 使用AspriseOCR.dll實現(xiàn)驗證碼識別

    這篇文章主要介紹了C# 使用AspriseOCR.dll實現(xiàn)驗證碼識別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-03-03
  • 利用thrift實現(xiàn)js與C#通訊的實例代碼

    利用thrift實現(xiàn)js與C#通訊的實例代碼

    利用thrift實現(xiàn)js與C#通訊的實例代碼,需要的朋友可以參考一下
    2013-04-04
  • C#清除WebBrowser中Cookie緩存的方法

    C#清除WebBrowser中Cookie緩存的方法

    這篇文章主要介紹了C#清除WebBrowser中Cookie緩存的方法,涉及C#針對WebBrowser控件的操作技巧,非常簡單實用,需要的朋友可以參考下
    2016-05-05
  • c#基礎(chǔ)系列之ref和out的深入理解

    c#基礎(chǔ)系列之ref和out的深入理解

    有過C#基礎(chǔ)知識的都應(yīng)該清楚Ref和Out的使用方法,所以下面這篇文章主要給大家介紹了關(guān)于c#基礎(chǔ)系列之ref和out的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2018-09-09

最新評論

晋江市| 西和县| 会昌县| 尼木县| 彭山县| 库伦旗| 仁布县| 梨树县| 涪陵区| 芜湖市| 普兰店市| 宁城县| 土默特左旗| 乌兰县| 策勒县| 卫辉市| 南安市| 民和| 丰顺县| 鹤庆县| 酉阳| 太谷县| 吉木乃县| 乳源| 夏津县| 资兴市| 乐平市| 灌南县| 渭南市| 神池县| 镇江市| 贵州省| 罗平县| 阿瓦提县| 武安市| 南昌县| 宁国市| 荣成市| 永胜县| 乐都县| 龙陵县|