在寫需要遞迴的自定義函式時,分以下幾部分進行考慮。
第一,需要考慮遞迴表示式,即如何把問題一步一步地向下剖開,直至不能再進行剖分為止。
第二,需要考慮問題剖分到最後的情況,即問題最後收斂的情況,這裡可以看到求階乘的時候,收斂到最後需要求m=0時的情況。
第三,剛剛本人犯的乙個低階錯誤,就是在遞迴的自定義函式裡,要避免定義變數或者給自定義變數手動賦值,不然,每次遞迴呼叫該函式都要重新給該變數定義和賦值,遞迴也就失去了意義。
/*計算任意輸入的整數的階乘
date:2023年11月11日
author:chauncy xu*/
#include
using
namespace std;
intmain()
return0;
}int
fac_fun
(int m)
第一次寫部落格,有什麼不對的希望各位指出來,大家共同學習,共同進步。 求得任意整數的階乘
所求數越大,記憶體開銷越大 即n的值越大 n的值設為1000,可求得400多的階乘 include include include define n 800 只要n設得足夠大,可求到的階乘數越大,設到1000,可以求到400多的階乘 void main printf n d i 1 for j k ...
求得任意整數的階乘
所求數越大,記憶體開銷越大 即n的值越大 n的值設為1000,可求得400多的階乘 view plain include include include define n 800 只要n設得足夠大,可求到的階乘數越大,設到1000,可以求到400多的階乘 void main if a j 10 pr...
關於求乙個正整數階乘的實現
第一種實現小數字階乘 class calculate public long calculatefactorial long n else if n 0 else 第二種實現方法 class calculate public string calculate long n else if n 0 n...