Re: [.NET] 請問AB數字遊戲的寫法

看板Visual_Basic作者 (原po比較老)時間19年前 (2005/10/04 01:32), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《yougetit1999 (清)》之銘言: : 我想請問一下關於AB數字遊戲的寫法,系統會隨機亂數 : 取出3位數,由玩家來猜測,數字不能重複,當數字跟 : 位置對為A,數字對為B,例如答案是321時,如果玩家 : 輸入123會出現1A2B,當輸入456時,出現0A0B,完全答 : 對為3A,即為正確解答。關於亂數3位數數字也不能重複 : ,可以指導我一下,思考方向應該是怎樣,會利用到哪 : 些函數呢,謝謝各位... 亂數產生數字的部份就不多說了, 首先把產生的數字和猜的數字都存成陣列 Dim Q(2) As Integer '題目 Dim gus(2) As Integer '使用者猜的答案 '...... 把數字帶入陣列 '檢查幾A幾B的方法其實很簡單,只要兩個迴圈就好 Dim A, B As Integer For i As Integer = 0 To 2 For j As Integer = 0 To 2 If Q(i) = gus(j) And i = j Then '數字相同、位置也相同 A += 1 ElseIf Q(i) = gus(j) And i <> j Then '數字相同,位置不同 B += 1 End If Next Next '顯示結果 If A = 3 Then MessageBox.Show("Yes!! You Win!!") Else MessageBox.Show(A & " A " & B & " B") End If 如果要做的精細點,記得在玩家輸入數字的時候也要做重複數字的檢查 -- 原po是歪歐巴桑。三十幾歲的老人家 http://www.wretch.cc/user/rosemary945 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.223.194.131
文章代碼(AID): #13GMiaU5 (Visual_Basic)
文章代碼(AID): #13GMiaU5 (Visual_Basic)