面向过程简单的五子棋逻辑

xiaoxiao2021-02-28  84

import java.util.Scanner; public class WuZiQi {     public static void main(String[] args) {         int[][] maps = new int[9][9];         for (int i = 0; i < maps.length; i++) {             for (int j = 0; j < maps[i].length; j++) {                 System.out.print(maps[i][j] + "  ");             }             System.out.println();         }                  while (true) {             // 黑棋;             System.out.println("请输入黑棋的横纵坐标:");             Scanner scanner = new Scanner(System.in);             int blackrow = scanner.nextInt();             int blackcol = scanner.nextInt();             if (maps[blackrow][blackcol] !=0) {                 System.out.println("你输入的位置已经有棋子了");                 break;             }             if (blackrow > 8 || blackcol < 0) {                 System.out.println("您输入的数字超出棋盘范围");                 return;             }                          maps[blackrow][blackcol] = 1;             for (int i = 0; i < maps.length; i++) {                              for (int j = 0; j < maps[i].length; j++) {                     if (i == blackrow & j == blackcol ) {                                                                                                                                                          maps[i][j] = maps[blackrow][blackcol] ;                                              }                     System.out.print(maps[i][j] + "  ");                 }                 System.out.println();             }             //黑棋赢             for (int i = 0; i < maps.length; i++) {                 for (int j = 0; j < maps.length; j++) {                     if (maps[i][j] == 1 && maps[i][j + 1] == 1 && maps[i][j + 2] == 1 && maps[i][j + 3] == 1                             && maps[i][j + 4] == 1) {                         // sum++;                         System.out.println("黑棋win");                         return;                     } else if (maps[i][j] == 1 && maps[i + 1][j] == 1 && maps[i + 2][j] == 1 && maps[i + 3][j] == 1                             && maps[i + 4][j] == 1) {                         System.out.println("黑棋win");                         return;                     } else if (maps[i][j] == 1 && maps[i + 1][j + 1] == 1 && maps[i + 2][j + 2] == 1                             && maps[i + 3][j + 3] == 1 && maps[i + 4][j + 4] == 1) {                         System.out.println("黑棋win");                         return;                     }                 }             }                          // 白棋             System.out.println("请输入白棋的横纵坐标:");             Scanner scanner1 = new Scanner(System.in);             int whiterow = scanner1.nextInt();             int whitecol = scanner1.nextInt();             if (maps[whiterow][whitecol] !=0) {                 System.out.println("你输入的位置已经有棋子了");                 break;             }             if (whiterow > 8 ||whitecol < 0) {                 System.out.println("您输入的数字超出棋盘范围");                 return;             }             maps[whiterow][whitecol] = 2;                                       for (int i = 0; i < maps.length; i++) {                 for (int j = 0; j < maps[i].length; j++) {                                                                   if (i == whiterow & j == whitecol) {                                                                                       maps[i][j] = maps[whiterow][whitecol];                                                      }                                          System.out.print(maps[i][j] + "  ");                 }                 System.out.println();             }             //白棋赢             for (int i = 0; i < maps.length; i++) {                 for (int j = 0; j < maps.length; j++) {                     if (maps[i][j] == 2 && maps[i][j + 1] == 2 && maps[i][j + 2] == 2 && maps[i][j + 3] == 2                             && maps[i][j + 4] == 2) {                         System.out.println("白棋win");                         return;                     } else if (maps[i][j] == 2 && maps[i + 1][j] == 2 && maps[i + 2][j] == 2 && maps[i + 3][j] == 2                             && maps[i + 4][j] == 2) {                         System.out.println("白棋win");                         return;                     } else if (maps[i][j] == 2 && maps[i + 1][j + 1] == 2 && maps[i + 2][j + 2] == 2                             && maps[i + 3][j + 3] == 2 && maps[i + 4][j + 4] == 2) {                         System.out.println("白棋win");                         return;                     }                 }             }         }     } }
转载请注明原文地址: https://www.6miu.com/read-34329.html

最新回复(0)