java 含类图 五子棋小游戏

JavaJava 设设 计计 报报 告告 书书 课程名称: JAVA 语言程序设计 设计题目:五子棋小游戏 院系 : 计算机科学与信息工程系 学生姓名: 学号: 专业班级: 指导教师: 2010 年 12 月 31 日 目目 录录 一、题目描述 3 二、设计思路 3 三、运行结果 8 四、源代码 9 五、总结 21 六、参考文献:21 一、题目描述一、题目描述:: 五子棋是一种两人对弈的纯策略型棋类游戏,是起源于中国,传统五子棋的 棋具与围棋相同,棋子分为黑白两色,棋盘为17×10,棋子放置于棋盘线交 叉点上。两人对局,各执一色,轮流下一子,先将横、竖或斜线的5 个或 5 个以上同色棋子连成不间断的一排者为胜 。本课题的功能就是 能按照五子棋 的规则实现人机对战,并能顺利结束棋局。 二、设计思路二、设计思路:: 1 1 类图: 2 2 说明: 表表 2.22.2 Chess 方法名功能备注 ChessPad() 初始化棋盘设置棋盘颜色, Voidpaint (Graphics g) 对棋子等图像进行初 始化 设置棋子大小,颜色等 表表 1.11.1 java 源文件及其功能 序 号 文件名主要功能备注 1Chess 本程序的主函数初始化棋盘 2Autoplay 实现电脑可以自动下棋分为 8 种情况 3Scan 扫描整个棋盘记录连在一起的黑白 棋子数 为判断胜负服务 4Sort 实现人与电脑有次序的下棋黑棋白棋有序的下 5Judge 判断人与电脑的胜负可以在文本框中显示 胜负结果 6uate 电脑估计为电脑下棋提供帮助 表表 2.12.1Chess 成员变量描 述 变量类型名称 控制棋子颜 色 inti 重新开局 ButtonButton 请黑棋下子 TextFieldtext_1 请白棋下子 TextFieldtext_2 这是第“+i+“ 步 TextFieldtext_3 public void mousePressed(MouseEve nt e) 鼠标的实践监听单击实践 public void paint(Graphics g) 画出图像控制图像的大小范围 public void mousePressed(MouseEve nt e) 处理按下鼠标的事件选中下棋的位置 public void mouseReleased(MouseEv ent e) 处理鼠标离开的事件本步下棋结束 public void mouseExited(MouseEvent e) 处理鼠标离开棋盘时 鼠标离开组件不实现任何事 件 public void mouseClicked(MouseEve nt e) 处理发生单击的事件实现下棋以及重新开始游戏 表表 2.32.3 Autoplay 成员变量描述变量类型名称 统计玩家的连起来的棋子 数 intX 电脑玩家的连起来的棋子 数 IntY 表表 2.42.4 Autoplay 方法名功能备注 void autoPlay(int chesspad[][],int a,int b) 分情况实现电脑自动 下棋 使用 switch 语句分为 8 种 情况来下棋 表表 2.52.5Scan 成员变量描述变量类型名称 统计棋盘种五个连起来的 棋子数 数组 int shape[][][] 控制行数 inti 控制列数 intj 表表 2.62.6Scan 方法名功能备注 void scan(int chesspad[][],int colour){ 判断棋盘上连在一起 的黑白棋子个数。 表表 2.72.7 Sort 成员变量描述变量类型名称 保存临时变量 inttemp 表表 2.82.8 Sort 方法名功能备注 public void sort(int shape[][][]) 实现黑白棋子的交替 下 数组为参数 表表 2.92.9 Judge 成员变量描述变量类型名称 控制行数 inti 控制列数 intj 记录连在一起的黑白棋子 数 intflag 表表 2.102.10 Judge 方法名功能备注 static boolean judge(int a[][],int color) 判断玩家与电脑的游 戏胜负 使用静态函数,分多钟情况 判断 表表 2.112.11 uate 成员变量描述变量类型名称 玩家最可能下的棋子的行 数 intmax_x 玩家最可能下的棋子的列 数 intmax_y 保存最大可能下棋的位置 intmax 控制行数 inti 控制列数 intj 表表 2.122.12 uate 方法名功能备注 public void uate(int shape[][][]) 电脑用于估计玩家下 步棋的走法 三、运行结果三、运行结果:: 四、源代码四、源代码:: import java.awt.*; import java.awt.event.*; class ChessPad extends Panel implements MouseListener,ActionListener{ int array[][]=new int[19][19]; Scan scanp=new Scan(); Scan scanc=new Scan(); AutoPlay autoPlay=new AutoPlay(); uate uatep=new uate(); uate uatec=new uate(); Sort sort=new Sort(); int i=0; int x=-1,y=-1,棋子颜色=1; Button button=new Button(“重新开局“); TextField text_1=new TextField(“请黑棋下子“), text_2=new TextField(), text_3=new TextField(); ChessPad(){ setSize(440,440); setLayout(null);setBackground(Color.pink); addMouseListener(this);add(button);button.setBounds(10,5,60,26); button.addActionListener(this); add(text_1); text_1.setBounds(90,5,90,24); add(text_2); text_2.setBounds(290,5,90,24); add(text_3); text_3.setBounds(200,5,80,24); for(int i=0;i19||(y-5)/2019) {} else { a=(x+10)/20;b=(y+10)/20; if(array[b-2][a-2]==0 chesspoint_black.setBounds(a*20-9,b*20-9,18,18); 棋子颜色=棋子颜色*(-1); array[b-2][a-2]=1; if (Judge.judge(array,1)){ text_1.setText(“黑

游戏Java类图_java含类图五子棋小游戏相关推荐

  1. 猜字小游戏java方法体_java实现猜字小游戏

    java实现猜字小游戏 闲来无事,实现一个猜数字的小游戏,目的是巩固自己的基础知识,培养敲代码的乐趣. 首先在项目中所创建的类中导包 (视频教程推荐:java课程)import java.util.S ...

  2. java 五子棋项目_Java项目实现五子棋小游戏

    本文实例为大家分享了Java实现五子棋小游戏的具体代码,供大家参考,具体内容如下 项目名称 五子棋小游戏 项目描述 可以改变获胜棋子数,率先连成棋数的人获胜 代码实现 测试类 public class ...

  3. java 打地鼠 源代码_Java实现的打地鼠小游戏完整示例【附源码下载】

    本文实例讲述了Java实现的打地鼠小游戏.分享给大家供大家参考,具体如下: 这里涉及到java线程和GUI的相关知识,一个简单的java小游戏打地鼠,有兴趣的朋友可以优化一下.先来看看运行效果: 具体 ...

  4. 猜字小游戏java方法体,手把手教你猜字小游戏,

    手把手教你猜字小游戏, package test07; import java.util.Scanner; //猜字符游戏 public class Guessing { //主方法 public s ...

  5. python五子棋游戏15*15_在STM32上运行五子棋小游戏(15x15)

    本程序算法资料来自下面网站. ----https://www.cnblogs.com/buptzym/archive/2012/06/20/2556052.html---- 先定义一个数组 用于存储整 ...

  6. JAVA课设单人版五子棋小游戏

    内容介绍:该程序为Java课设的单人版五子棋小游戏,通过eclipse编辑,实现了动作事件的监听与处理,以及JavaSwing的界面编程.  编辑排行榜,包含局数,结果,步数,以及"关于我们 ...

  7. java五子棋小游戏_java实现五子棋小游戏

    java实现五子棋小游戏 package Gomoku; import java.awt.Toolkit; import javax.swing.JFrame; public class Gomoku ...

  8. java 五子棋项目_Java项目如何实现五子棋小游戏

    Java项目如何实现五子棋小游戏 发布时间:2020-07-21 14:53:06 来源:亿速云 阅读:77 作者:小猪 小编这次要给大家分享的是Java项目如何实现五子棋小游戏,文章内容丰富,感兴趣 ...

  9. IDEA查看Java类的UML关系图

    1.说明 通过IDEA自带的Diagarm功能, 可以方便的查看Java类的UML关系图, 同时能有选择的查看变量.方法和构造器等, 以及对查看对象的访问权限进行过滤, 可以自由编辑生成的关系图, 任 ...

  10. java走棋_Java五子棋小游戏(控制台纯Ai算法)

    Java五子棋小游戏(控制台纯Ai算法) 继续之前的那个五子棋程序 修复了一些已知的小Bug 这里是之前的五子棋程序 原文链接 修复了一些算法缺陷 本次增加了AI算法 可以人机对战 也可以Ai对Ai看 ...

最新文章

  1. 计算机二级能学到知识吗,2017年关于计算机二级msoffice学习知识点
  2. 十三: 悲观锁乐观锁:解决丢失更新问题
  3. 论文阅读:DENSELY CONNECTED CONVOLUTIONAL NETWORKS
  4. 0098 高级程序设计 c语言 在线作业,中国大学MOOC(C语言程序设计精髓)作业
  5. JDBC基础知识复习
  6. SQL各种join用法
  7. 【Linux】一步一步学Linux——telinit命令(144)
  8. ABAP CCDEF, CCIMP, CCMAC, CCAU, CMXXX这些东东是什么鬼
  9. linux之history和!命令联合使用
  10. 2016陕西省ACM 热身体B 种类并查集
  11. 使用html记笔记,开始学习HTML,并记下笔记
  12. php获取当前几点,学习猿地-php 怎么获取当前几点
  13. java 读取wav采样数据_读取wav文件中的音频数据操作
  14. IntelliJ IDEA 2019.1 EAP5 发布,Maven 构建输出统一查看
  15. 一文看懂:销售数据分析怎么做?
  16. Visual Studio 2019 C++实现socket通信,添加ws2_32.lib库,新手代码
  17. EasyAR WebAR开发
  18. 扫普通二维码打开小程序,可进入体验版
  19. 电脑键盘快捷键使用大全
  20. 单片机MPU9250/6050陀螺仪芯片驱动

热门文章

  1. 盘点五款好用的项目管理软件
  2. 系统集成方案(一).NET集成方案
  3. cesium-事件监听(获取点击位置的经纬度和高度)
  4. Magicodes.IE已支持通过模板导出票据
  5. 根据银行卡号获取银行名称
  6. LaTeX数学公式-详细教程
  7. junit5教程_JUnit5教程
  8. hsf 架构_HSF源码剖析
  9. web版python软件授权注册机
  10. 2019数据安装勾选_Origin2019下载和安装教程