精華區beta Visual_Basic 關於我們 聯絡資訊
※ 引述《dilimma (ㄟ( ̄O ̄ㄟ)﹏﹏)》之銘言: : ※ 引述《dilimma (ㄟ( ̄O ̄ㄟ)﹏﹏)》之銘言: : 謝謝icehorng的提示,我改寫成下面的式子 : ═════════════════════ : Private Sub Command1_Click() : m = 1 : Do : n = n + 1 : If n = 7 Then Exit Do : m = m * n : Loop : MsgBox ("6!=" & m) : End Sub : ═════════════════════ : : 想請問...m=2之後不符合第二層loop的條件 : : 但為何無法執行下一行的m=m*n ? : 但是我用手算doloop的流程,還是不懂為何在 m=2 會當掉?? 如果是在你的 do-loop 中使用 condition of termination 建議不要使用絕對條件. 也就是說儘量避免用 A = ? 之類的 statement 除非已經很確定 A 值一定會在你的結果集合內出現. 不然很容易陷入 infinite-loop 在這裡我想請問作者, 您的意思是當 m>=2 時要結束 loop 嗎? 如果是, 那就把 m=2 改成 m>=2, 如此便達到終止 loop 的目的. -- --------------------------- 東華資工的老骨頭. (第一屆) Xu Shi-Xing ( 徐世興 ) E-MAIL: brown.AT.enjust.com -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 211.75.163.150