會拆數字之後接下來就把兩個數字做拆解後個別存到box1 跟box2上
也就是box1[]跟box2[]
那問題就來了 我們如何讓電腦知道幾A幾B呢?
我們先自己比對一次 是不是就像下圖一樣呢?
如果我把A1(box1)當成主要角色B1(box2)當成次要角色
那麼對應方式就會為.....
box1[0]去對上box2[0,1,2,3]
box1[1]去對上box2[0,1,2,3]
以此類推
所以注意到了嗎? box1和box2的關係是不是就變成巢狀迴圈了呢?
再來.... 接下來A代表數字對位置也對
B則是數字對 位置不對.....
我們把剛剛的巢狀迴圈 控制i j的值 是不是就是位置呢?
不懂的話回去看上一張圖.... A1裡面有4個格子 所以變成box1[i] i=0,1,2,3以此類推
也就是說 我們跑這個巢狀迴圈是在抓box1[i]裡面的值 那i就是索引值也就是位置
囉.....
接下來....了解位置後
應該就能很輕鬆判斷A和B的條件吧
所以 符合A 程式碼就是:if(i==j&&box1[i]==box2[j]) 如果位置正確裡面的值也正確那麼....
符合B 程式碼就是:if(i!=j&&box1[i]=box2[j]) 如果位置不正確 裡面值正確那麼.....
以上就是數字比對的部分
注意!這裡只是教方法如何使用....複製貼上一點意義都沒有.(1A2B 不懂這些程式碼拼拼湊湊絕對不會有答案出來喔..... 真心不騙)
以下程式碼為:
public static void comp(int[] box1,int[] box2) { for(i=0;i<=3;i++) { for(j=0;j<=3;j++) { if(i==j&&box1[i]==box2[j]) { aok++; }else if(i!=j&&box1[i]==box2[j]) { bok++; } } } }
沒有留言:
張貼留言