【正文】
。 default: shape[i][j][4] = 20 + shape[i][j][2] + shape[i][j][3]。 } break。 case 2: shape[i][j][4] = 10 + shape[i][j][1] + shape[i][j][2] + shape[i][j][3]。 break。 case 1: shape[i][j][4] = shape[i][j][0] + shape[i][j][1] + shape[i][j][2] + shape[i][j][3]。 default: shape[i][j][4] = 0。 } } int x = 0, y = 0。 max = 0。 for (x = 0。 x 19。 x++) for (y = 0。 y 19。 y++) if (max shape[x][y][4]) { max = shape[x][y][4]。 max_x = x。 max_y = y。 } }Judge類中的judge方法是通過掃描當(dāng)前點(diǎn)周圍的同色棋子數(shù)進(jìn)行判斷,如果勝利則返回True,否則返回False。這個(gè)方法需要配合使用,電腦會(huì)在下子之后調(diào)用這個(gè)方法。這個(gè)方法實(shí)現(xiàn)的偽代碼如下: static boolean judge(int a[][], int color) { int i, j, flag。 for (i = 0。 i 19。 i++) { flag = 0。 for (j = 0。 j 19。 j++) if (a[i][j] == color) { flag++。 if (flag == 5) return true。 } else flag = 0。 } for (j = 0。 j 19。 j++) { flag = 0。 for (i = 0。 i 19。 i++) if (a[i][j] == color) { flag++。 if (flag == 5) return true。 } else flag = 0。 } for (j = 4。 j 19。 j++) { flag = 0。 int m = j。 for (i = 0。 i = j。 i++) { if (a[i][m] == color) { flag++。 if (flag == 5) return true。 } else flag = 0。 } } for (j = 14。 j = 0。 j) { flag = 0。 int m = j。 for (i = 0。 i = 18 j。 i++) { if (a[i][m++] == color) { flag++。 if (flag == 5) return true。 } else flag = 0。 } } for (i = 14。 i = 0。 i) { flag = 0。 int n = i。 for (j = 0。 j 19 i。 j++) { if (a[n++][j] == color) { flag++。 if (flag == 5) return true。 } else flag = 0。 } } for (j = 14。 j = 0。 j) { flag = 0。 int m = j。 for (i = 18。 i = j。 i) { if (a[i][m++] == color) { flag++。 if (flag == 5) return true。 } else flag = 0。 } } return false。 }