基本上,我創建了一個可以交換棋子的拼圖。我想確保在交換2個元素時,選擇是有效的。比較3x3矩陣的2個元素以查看元素2是否與元素1相鄰
因爲讓人不解的是隻有9個(3×3),我目前使用的代碼:
function valid_selection(p1, p2) {
if (p1 == 1 && (p2 == 2 || p2 == 4)) return true;
if (p1 == 2 && (p2 == 1 || p2 == 3 || p2 == 5)) return true;
if (p1 == 3 && (p2 == 2 || p2 == 6)) return true;
if (p1 == 4 && (p2 == 1 || p2 == 5 || p2 == 7)) return true;
if (p1 == 5 && (p2 == 2 || p2 == 4 || p2 == 6 || p2 == 8)) return true;
if (p1 == 6 && (p2 == 3 || p2 == 5 || p2 == 9)) return true;
if (p1 == 7 && (p2 == 4 || p2 == 8)) return true;
if (p1 == 8 && (p2 == 5 || p2 == 7 || p2 == 9)) return true;
if (p1 == 9 && (p2 == 6 || p2 == 8)) return true;
return false;
}
但是,我可以做到這一點編程?任何人都知道這樣的算法?
任何幫助表示讚賞。
請說明校驗序列,因爲我們不知道遊戲規則。 – Drakosha 2009-12-27 17:04:57
通過研究我現在的代碼,您可以輕鬆看到。這有點難以解釋, – google 2009-12-27 17:08:46
看起來像一個程序給我。 – 2009-12-27 17:14:02