Re: [VB6 ] 急問! 請益簡單遞迴的問題..

看板Visual_Basic作者 (☆給呼呼@妮妮☆)時間14年前 (2012/03/01 17:16), 編輯推噓2(203)
留言5則, 2人參與, 最新討論串2/2 (看更多)
※ 引述《note7932 (小女孩)》之銘言: : 原Po : 要考北科的某研所 : 結果計概程設是用Basic 應該是VB吧 : 想請問以下這題: : 以下有一個副程式 若執行H(3,1,3) 則螢幕輸出的資料為何 : Sub H(n As Integer, p as interger,q as integer) : if n>1 Then H(n-1,p,6-p-q) : Print"Move Disk";n;"from";p"to";q : if n>1 Then H(n-1,6-p-q,q) : End Sub : 可以煩請簡單地訴說流程與結果嗎 : 謝謝各位.. 我推的流程,若有不對的地方請指教~ 若n推算到最後出現1的話都是直接print出來~ H(3,1,3) 跑第一個if ->H(2,1,2) 跑第一個if ->H(1,1,3) print 1,1,3 | | | | | ->print 2,1,2後 接續第二個if->H(1,3,2) print 1,3,2 | ->print 3,1,3後接續第二個if->H(2,2,3)跑第一個if->H(1,2,1) print 1,2,1 | | ->print 2,2,3後接第二個if->H(1,1,3) print 1,1,3 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.33.136.41

03/01 17:27, , 1F
所以是print 1,1,3 print 1,3,2 print 1,2,1 print 1,3,3
03/01 17:27, 1F

03/01 17:27, , 2F
4組print 嗎@@?
03/01 17:27, 2F

03/01 17:28, , 3F
1,1,3->2,1,2->1,3,2->1,2,1->2,2,3->1,1,3
03/01 17:28, 3F

03/01 17:28, , 4F
6組print
03/01 17:28, 4F

03/01 17:39, , 5F
懂了!!實在是大推 ! 感謝感謝 !!!!!
03/01 17:39, 5F
文章代碼(AID): #1FJpvJMh (Visual_Basic)
討論串 (同標題文章)
文章代碼(AID): #1FJpvJMh (Visual_Basic)