Hellow C# unity學習記錄(8)函式的遞迴

京城下了一場大雪發表於2020-11-28

此部落格用來記錄一下學習的知識點

函式的遞迴定義很簡單:
在一個函式中直接或間接呼叫自身則該函式被稱為遞迴函式,
遞迴函式必須有結束遞迴的條件,否則會出現死迴圈造成棧溢位。

輸出連續數字

//這段程式碼輸出10到0並不是0到10
static void Test(int index)
        {
            index++;
            if (index > 10)
            {
                return;
            }
            //遞迴
            Test(index);
            Console.WriteLine(index);
        }

計算一個數的階乘

//計算一個數的階乘
static int Factorial(int n)
        {
            //結束的條件
            if (n==1)
            {
                return 1;
            }
            return n * Factorial(n - 1);
        }

計算階乘的和

static int FactorialSum(int num)
        {
            if (num==1)
            {
                return 1;
            }
            //10!9!+8!+····1!
            //10!+(9個的和)
            //9!+(8個的和)
            return Factorial(num) + FactorialSum(num - 1);
        }

一根竹竿100米,每天折半,第N天多長

 static float GetLength(int day)
        {
            //已知
            if (day==0)
            {
                return 100;
            }
            return  GetLength(day - 1) * 0.5f;

        }

相關文章