多重迴圈 解析 語法
有可能會牽扯到
遞迴 與 推疊
前陣子研究一個排列組合法
當時就用到 遞迴函式
因為太久沒用過
害腦子混了好久才寫出來
之前是參考別人的多重迴圈
想說把它解析一下應該就可以
但結果就此陷入好幾天的邏輯錯亂
後來一直用跑除錯方式才改出來
結果
遞迴函式才沒幾行(簡簡單單的說)
一個簡單的經驗(設計概念)提供一下
1.函式開頭要有個結束條件 (必須放在開頭)
比如
If Lv=0 Then
...
Exit Sub
End If
2.再來接著的就是寫一個單一迴圈, 裡面有個呼叫自己的式子
比如
For i=a To N
...
呼叫自己()
...
Next
3.重點是 呼叫自己()使用的引數 要清楚了解 那些必須是傳址 那些是傳值就好 (盡量避免用全域變數設計)
只要先把這三個要點先匡出來
邏輯就會簡單多了
|