我開始自學Pascal,我想創建一個程序,在這裏我會計算一個馬的可能移動次數,以便在2次移動中做出,如果我知道它開始正在進行。所以我知道如何做到這一點,首先我可以在所有8邊移動(2上1左,2上1右,2左,1上...),如果有可能,那麼我做它再次爲第二步,但我會有相同的代碼,我用來計算可能的舉動第一次重複8次。對不起,如果這是一個愚蠢的問題,如果你可以給我一些關於這個問題的教程,我剛開始學習,我甚至不知道是否有可能做到這一點。如何在Pascal中縮短代碼,如果我有一個部分在多個函數中重複?
-2
A
回答
1
您可以爲您的計算創建一個函數。它可以返回來自給定位置的可能移動的數量。
事情是這樣的:如果
Function calcMoves(pos : Position) : integer
Begin
...logic...
calcMoves := theNumberOfMovesThatAreLegalFromPos
End
對不起語法是關閉的,它是因爲我在做帕斯卡爾東西已經有一段時間。 但是,這個想法是,你現在可以重新使用計算。 什麼可能更好呢是有一個函數,不僅計算允許移動的數量,而且還計算位置。您將需要返回某種數組或集合。這樣,您可以使用起始位置作爲參數調用函數一次,然後在該移動之後遍歷所有可能的位置,並將第一次移動的結束位置作爲第二次移動的開始位置。這就是我會做的,但我真的不記得Pascal中的收藏是如何工作的。
相關問題
- 1. 縮短重複代碼
- 2. 最短的代碼,如果一個數字是在JavaScript中
- 3. 如何縮短C#窗體中的重複代碼?
- 4. 這個dom-to-vars代碼如何在JavaScript中縮短?
- 5. 我如何獲得一個函數在java中重複
- 6. 我如何在jQuery中重複一個函數?
- 7. 如何縮短這個jQuery代碼?
- 8. 如何縮短這個JS代碼?
- 9. 如何縮短這個jQuery代碼
- 10. 如何縮短一個屬性,具有重複GET和setter
- 11. 如何將我的重複jQuery代碼合併到一個函數中?
- 12. 如何在一個方法中每秒重複一段代碼
- 13. 我如何縮短我的linq代碼?
- 14. 部分pascal函數
- 15. 如何在Pascal中導入代碼?
- 16. 如何縮短jQuery函數中的相同部分?
- 17. 如何在一個UI中迭代兩個數組:重複?
- 18. 如何在Python中修復這個簡短的測試代碼?
- 19. 如何meck:期望一個具有多個部分的函數
- 20. jQuery函數重複。我怎樣才能縮短這個時間?
- 21. 卡在'如果'測試:另一個代碼的一部分
- 22. 如何縮短這個PHP函數?
- 23. 如何縮短這個jquery函數?
- 24. 如何縮短這個jquery函數
- 25. 在列表中重複列出一個函數,不需要重複代碼
- 26. 有很多重複的簡短代碼
- 27. 如何重複部分代碼?
- 28. 如何在jQuery中有多個函數?
- 29. 如何在另一個子程序中執行部分代碼
- 30. 如何縮短我的代碼
明確您的問題,添加一些代碼快照或您的想法...在這裏你不會下載源代碼... – danielad