zoukankan      html  css  js  c++  java
  • java实现简单的五子棋

    import java.io.*;
    import java.io.BufferedReader;
    public class Gobang
    {
    	private String[][] board;
    	private static int BOARD_SIZE = 15;
    	public void initBoard()
    	{
    		board = new String[BOARD_SIZE][BOARD_SIZE];
    		for(int i = 0; i < BOARD_SIZE; i++)
    		{
    			for(int j = 0; j < BOARD_SIZE; j++)
    			{
    				board[i][j] = "+";
    			}
    		}
    	}
    
    	public void printBoard()
    	{
    		for(int i = 0; i < BOARD_SIZE; i++)
    		{
    			for(int j = 0; j < BOARD_SIZE; j++)
    			{
    				System.out.print(board[i][j]);
    			}
    			System.out.print("\n");
    		}
    	}
    
    	public static void main(String[] args) throws Exception
    	{
    		Gobang gb = new Gobang();
    		gb.initBoard();
    		gb.printBoard();
    		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));	
    		String inputStr = null;
    		while((inputStr = br.readLine()) != null)
    		{
    			String[] posStrArr = inputStr.split(",");
    			int xPos = Integer.parseInt(posStrArr[0]);
    			int yPos = Integer.parseInt(posStrArr[1]);
    			gb.board[yPos-1][xPos-1] = "●";
    			/*
    				此处应为电脑随机生成两个数,作为电脑下棋的坐标,赋给board数组不同与实心圆的白色棋子。
    				涉及:
    					1、坐标的有效性,只能是数字,不能超出棋盘的范围
    					2、下过棋的点,不能重复下棋
    					3、每次下棋后,需要扫描谁赢了
    			*/
    			gb.printBoard();
    			/*
    				并在此进行四次循环扫描,判断横、竖、左斜、右斜是否有五个棋连在一起。
    			*/
    			System.out.println("请输入您下棋的坐标,应以x,y的格式:");
    		}
    	}
    }


  • 相关阅读:
    MinGW-编译器
    Enum , Enum Class ?
    C++编译器之间的不同性能
    交叉验证
    经验风险最小化-结构风险最小化
    图像卷积
    pytorch官网上两个例程
    ORB feature(O for orientation)
    Catalan数
    无责任共享 Coursera、Udacity 等课程视频(转载)
  • 原文地址:https://www.cnblogs.com/javawebsoa/p/3100650.html
Copyright © 2011-2022 走看看