当前位置: 首页 > news >正文

福建网站优化建设简单网站模板下载

福建网站优化建设,简单网站模板下载,今天怀化市感染名单,静态网站 模板五子棋是一种双人对弈的棋类游戏#xff0c;通常在棋盘上进行。棋盘为 1515 的方格#xff0c;黑白双方各执棋子#xff0c;轮流在棋盘的格点上落子#xff0c;先在横、竖、斜线上形成五个相连的同色棋子者获胜。五子棋规则简单#xff0c;易学难精#xff0c;兼具攻防和…五子棋是一种双人对弈的棋类游戏通常在棋盘上进行。棋盘为 15×15 的方格黑白双方各执棋子轮流在棋盘的格点上落子先在横、竖、斜线上形成五个相连的同色棋子者获胜。五子棋规则简单易学难精兼具攻防和谋略是一种极具智慧和趣味性的游戏。 以下是使用Java编写的五子棋游戏的示例代码 棋盘类 public class ChessBoard {private int[][] board;private final int rows;private final int cols;private final int winCount;public ChessBoard(int rows, int cols, int winCount) {this.rows rows;this.cols cols;this.winCount winCount;board new int[rows][cols];}public int getRows() {return rows;}public int getCols() {return cols;}public int getWinCount() {return winCount;}public int getChessman(int row, int col) {return board[row][col];}public boolean canPutChessman(int row, int col) {return board[row][col] 0;}public void putChessman(int row, int col, int player) {board[row][col] player;}public boolean isFull() {for (int i 0; i rows; i) {for (int j 0; j cols; j) {if (board[i][j] 0) {return false;}}}return true;}public boolean hasWinner(int player) {for (int i 0; i rows; i) {for (int j 0; j cols; j) {if (board[i][j] player) {if (checkHorizontal(i, j, player)) {return true;}if (checkVertical(i, j, player)) {return true;}if (checkDiagonal1(i, j, player)) {return true;}if (checkDiagonal2(i, j, player)) {return true;}}}}return false;}private boolean checkHorizontal(int row, int col, int player) {int count 1;for (int j col 1; j cols board[row][j] player; j) {count;}for (int j col - 1; j 0 board[row][j] player; j--) {count;}return count winCount;}private boolean checkVertical(int row, int col, int player) {int count 1;for (int i row 1; i rows board[i][col] player; i) {count;}for (int i row - 1; i 0 board[i][col] player; i--) {count;}return count winCount;}private boolean checkDiagonal1(int row, int col, int player) {int count 1;for (int i row 1, j col 1; i rows j cols board[i][j] player; i, j) {count;}for (int i row - 1, j col - 1; i 0 j 0 board[i][j] player; i--, j--) {count;}return count winCount;}private boolean checkDiagonal2(int row, int col, int player) {int count 1;for (int i row 1, j col - 1; i rows j 0 board[i][j] player; i, j--) {count;}for (int i row - 1, j col 1; i 0 j cols board[i][j] player; i--, j) {count;}return count winCount;}}游戏界面类 import java.awt.Color; import java.awt.Graphics; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import javax.swing.JFrame; import javax.swing.JPanel;public class GameUI extends JFrame {private final int rows;private final int cols;private final int winCount;private ChessBoard board;private int currentPlayer;private boolean gameOver;private final JPanel panel;public GameUI(int rows, int cols, int winCount) {this.rows rows;this.cols cols;this.winCount winCount;setTitle(五子棋);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setSize(cols * 40, rows * 40); // 每个棋子为正方形大小为40setLocationRelativeTo(null);currentPlayer 1;board new ChessBoard(rows, cols, winCount);gameOver false;panel new JPanel() {Overridepublic void paintComponent(Graphics g) {super.paintComponent(g);for (int i 0; i rows; i) {for (int j 0; j cols; j) {int chessman board.getChessman(i, j);if (chessman 1) {g.setColor(Color.BLACK);g.fillOval(j * 40 5, i * 40 5, 30, 30);} else if (chessman 2) {g.setColor(Color.WHITE);g.fillOval(j * 40 5, i * 40 5, 30, 30);g.setColor(Color.BLACK);g.drawOval(j * 40 5, i * 40 5, 30, 30);}}}}};panel.addMouseListener(new MouseAdapter() {Overridepublic void mouseClicked(MouseEvent e) {if (gameOver) {return;}int col e.getX() / 40;int row e.getY() / 40;if (row rows col cols board.canPutChessman(row, col)) {board.putChessman(row, col, currentPlayer);panel.repaint();if (board.hasWinner(currentPlayer)) {gameOver true;System.out.println(Player currentPlayer wins.);} else if (board.isFull()) {gameOver true;System.out.println(Tie game.);} else {currentPlayer 3 - currentPlayer; // 切换玩家}}}});add(panel);setVisible(true);}}主程序 public class Main {public static void main(String[] args) {new GameUI(15, 15, 5);}}在主程序中创建游戏界面对象传入行数、列数和获胜所需连续棋子个数即可开始游戏。 效果如下 快去体验一下吧
http://www.dnsts.com.cn/news/244665.html

相关文章:

  • 做网站基本步骤网站如何安装dedecms
  • wordpress数据库损坏网站域名备案信息查询
  • 苏州公司建站曲靖网站设计
  • 北京网站设计公司wx成都柚米科技15郑州做供暖的公司网站
  • 网站建设好的公司网站设计区域
  • 山西建筑劳务网站科技经济导刊官网
  • 网站导航的交互怎么做建设电子商务网站的花费
  • 注册证查询网站怎样做商业网站平台
  • 云南个旧建设局网站如和做视频解析网站
  • 建设企业网站的公司小程序开发公司加盟
  • 网站qq获取番禺网站建设找哪家
  • 有什么网站可以做宣传图片专业网站建设网站推广
  • 中煤第一建设公司网站绵阳做网站的公司有哪些
  • 免费申请地图定位宁波seo服务引流推广
  • 做的好的旅游网站暴雪网易2023后不代理了
  • 查看网站用什么语言做的分类信息有哪些网站
  • 什么是网站开发类课程专业的外贸网站建设公司
  • 网站开发的就业wordpress的登录密码
  • wordpress meta value做seo网站优化价格
  • 冷水江网站定制网站空间数据库使用
  • 信息化建设网站网站建设与维护王欣
  • 网站如何做seo推广方案wordpress被挂弹窗
  • 网站设计文字大小微信公众号链接网站开发
  • seo网站打开慢做网站一定要用cms吗
  • 手机设置管理网站首页wordpress探针插件
  • 人才招聘网站开发app和微网站的区别是什么
  • 北京市网站制作公司wordpress 读取副标题
  • 网站建设中颜色的感染力wordpress评论开关
  • 曲阜人网站找别人做网站多少钱
  • 岳阳做网站费用正规专业的互联网代做毕业设计网站