![基于JAVA的五子棋游戏系统设计与实现_第1页](http://file4.renrendoc.com/view/9b94eaf685ba559c1f95970a73e6843b/9b94eaf685ba559c1f95970a73e6843b1.gif)
![基于JAVA的五子棋游戏系统设计与实现_第2页](http://file4.renrendoc.com/view/9b94eaf685ba559c1f95970a73e6843b/9b94eaf685ba559c1f95970a73e6843b2.gif)
![基于JAVA的五子棋游戏系统设计与实现_第3页](http://file4.renrendoc.com/view/9b94eaf685ba559c1f95970a73e6843b/9b94eaf685ba559c1f95970a73e6843b3.gif)
![基于JAVA的五子棋游戏系统设计与实现_第4页](http://file4.renrendoc.com/view/9b94eaf685ba559c1f95970a73e6843b/9b94eaf685ba559c1f95970a73e6843b4.gif)
![基于JAVA的五子棋游戏系统设计与实现_第5页](http://file4.renrendoc.com/view/9b94eaf685ba559c1f95970a73e6843b/9b94eaf685ba559c1f95970a73e6843b5.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
专业电子信息工程 学生董永杰 摘要,为了满足没有网络同样能娱乐的要求,许多小游IIISTRACTrdertosatisfytheaboveclientsrequirementsAlargenumberofgamesusually V 1 第一章绪论第一章绪论蓝”便是最具说服力的代表,其它像围棋的“手淡”、既有“场”的概念,亦有“点”的连接。它是中西文化的交流点,是古今哲理的结晶。五子棋起源于古代中国,发展于日本,风靡于欧洲。它在不同的国度也有类一直不断的在思考,五子棋游戏程2 云南民族大学学士学位论文了。修身养性而且富含哲理,具有东方的神秘和西方的直观,是中西文化的交汇点。许多国家的人对五子棋都有不同的爱称,例如韩国人把五子棋称之为“情侣棋”,言下之意是情人之间下五子棋有利于增加情感的交流;欧洲人称之为“中老年棋”,表示五子棋适合中老年人的生理特点和思维方式;美洲人喜欢将五子棋称之为“商业棋”,就是说商人谈生意时可边下棋边谈生意,棋下完了生意也谈成了。由此可见,尽管国度不同,语言各异,但人们都可以借助五当前,有40多个国家和地区都在下五子棋,并有各种规模和级别的比赛。1989年8月在日本京都、1991年8月在俄罗斯联邦的莫斯科、1993年8月在瑞典、1995年8月在爱沙尼亚的塔林分别举行了第一、爱沙尼亚人之外,其余三届的冠锦标赛,每两年举办一次,其申国竞争也十分激益增强。同时,五子棋的理论研究与探索也呈现蓬勃发展的势头,从1858年第一部五子棋专著问世以来,目前,全世界有2000多种五子棋的书籍及期刊,分别以日文、俄文、英文、瑞典文及京、上海、天津、云南、浙江、广东、四、“京空杯”、“奇奇童杯”、“北京第六民族运动会”的五子棋比赛。上海地区举办了3 第一章绪论“上文杯”五子棋大赛。云南省以及其他省市亦举办过许多五子棋比赛。所有人们的关注,表明了根埴于中国的五子棋有。五子棋游戏供我们玩,任何游戏平台那么它就有五子棋在里面,网络五子棋比赛,在联里面玩家人数排名总会占到很前面,不愧是风靡全来越多,而且还可以以教育孩子的方式来将其嵌套,可以说以后的五子棋游戏会是那么的精彩,那么析与设计,第四章软件的具体实现,第五章总结与展望,最后由致谢、附录和参4 云南民族大学学士学位论文第二章五子棋程序相关技术介绍下子,棋盘上将在相应的位置上显是白方已经胜利,并且跳出个游戏信息,这个游戏信息是用来提示当前是黑据这个提示来相应的下棋,而不会导棋提示上提示哪方时点认断是否超出规定的时间,如果超出时间手段以及工具的介绍5 第二章五子棋程序相关技术介绍语言中容易引起错误的指针(以引用取代)、运算符重载(operatoroverloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于的内存空间,使得程序员不用再为内存管理而担跨平台特性。不过,每次的编译执行需要消耗一定之JavaJava语言靠群体的力量而非公司的力量”是布式、解释性、健壮、安全与系统无关、可移种称为Java字节码的中间语言),又是解释型的(JVM对字节码进行解析和运行)。编译只进行一次,而解释在每次运行程序时都会进行。编译后的字节码采6 云南民族大学学士学位论文MyEclipseJavaeDevelopmentEnvironment,PDE),这个组件主要针对希望扩展MyEclipse107第二章五子棋程序相关技术介绍核心平台(启动MyEclipse10,运行插件)OSGi(标准集束框架)SWT(可移植构件工具包)JFace(文件缓冲,文本处理,文本编辑器)MyEclipse10工作台(即Workbench,包含视图(views)、编辑器(editors)、视角(perspectives)、和向导(wizards))MyEclipse0采用的技术是IBM公司开发的(SWT),这是一种基于Java 在电脑上下棋,而不需要去捷。而且能更好的推广五子棋于世人,也吸引更多的人喜欢上五子程序在以后的制作中功能越来越强8 云南民族大学学士学位论文第三章五子棋程序分析与设计通过上述的用户需求,可以得出一个总体的,9第三章五子棋程序分析与设计联机对完设计联机对完设计游戏提示输赢的判定落子的设计选择难度棋盘的设计五子棋程序3.3软件各个功能的简要说明子,并被绘制出来,黑子是一棋的时候,棋子都是会落在交点 云南民族大学学士学位论文左上交点为绘制棋子的中心点,那么白方,交替进行,这是就要弄一个互斥事件进去,让他们交替:当我们落子时,会不小心落到相同位,不能落在相同位置上,需要重新落已经绘制过棋子以后,我们就要给一个只能在它为真时才能绘制棋子,否则就颜色子都连在了一起的时候,我们就要判其游戏信息的,用来提示道谁在下,这个功能只要在个提示信息用于显示到界面全部清空,回复到一开始的时候的认输的功能就是在判断输赢功能的基信心的时候使用。退出游戏的功能就择的与电脑下五子棋选择和那种电脑来难。而且电脑的思维便玩家与玩家相互之间切磋棋艺而设网里面,然后联机对战。当双行联网对战了。这极大的提高1 第三章五子棋程序分析与设计3.4软件设计中使用到的JAVA软件包以及类和方法Javax.swing.JFrame//javax.swing软件包提供一组“轻量级”(全部Javaawtjavaawt包包含用于创建用户界面和绘制图形图像的olkitgeiDefaultToolkitgetScreenSizewidthToolkitgeiDefaultToolkitgetScreenSizeheight//以上这两Toolkit子类的名称;否则将使用特定于平台的默认JavaxswingJOptionPaneJOptionPane便地弹出要求用户框 云南民族大学学士学位论文JavaawtimageBufferedImageBufferedImage子类描述具有可访问图ImageBufferedImage像数据的ColorModel和Rasterel3.5五子棋界面设计 第三章五子棋程序分析与设计棋棋盘的设计棋盘的底色下棋信息显示设计棋盘位置的摆放设计完毕底色,画上棋盘线条,把棋加下棋的信息,如:状态,时间显示,开始游3.6五子棋算法设计五子棋算法设计 云南民族大学学士学位论文A设设置棋盘边界设子棋盘底色,并且设置线条颜色初始值为0,且每次运行自动加1否初始值为0,且每次运行自动加1是否大于14是否大于14是找准棋盘线条交叉点画上天元、天星棋盘完成 第三章五子棋程序分析与设计一般为木质颜色,如:蜡黄色)和线条颜色,接下来就可以画棋盘线条了,执行获取点击坐获取点击坐标寻找横竖交叉点画半径为13的圆填充刚才画的这个圆是的红心圆,表示这手是我刚下是否属于当前在填充圆画一个小结束否va 云南民族大学学士学位论文度等级。分别为容易、中等和困难。我们可以没有被堵住的情况下当然也就是说堵住的情况下当然也就是说三个连珠并且没有被堵住的情况下当然也就是说 第三章五子棋程序分析与设计开始游戏开始游戏黑方先下(自己)判定是否结束否分析是否结束(得到每个点重要否是判断重要性是否最高是将白子下算法设计的地方否提起下一个点判断是否结束是结束开始下子,系统赋予该棋子(Value)初始值,然后系统自动分“\”“/” 云南民族大学学士学位论文1.当自己已经有四个连珠并且至少有一个没有被其他颜色棋子拦截的情况2.当计算出的对方已经有四个连珠并且没有被拦截住的情况就会去拦截。3.当计算出的自己已经有三个连珠并且没有被拦截的情况下就会继续补齐4.当计算出的对方已经有三个连珠并且没有被拦截的情况就会主动去拦当为棋盘出现四三连(三三连)连子的情况时候它不拦截1.当计算出的自己已经有四个连珠并且至少有一个没有被其他颜色棋子拦2.当计算出的对方已经有四个连珠并且没有被拦截住的情况就会去拦截。3.当计算出的自己已经有三个连珠并且没有被拦截的情况下就会继续补齐4.当计算出的对方已经有三个连珠并且没有被拦截的情况就会主动去拦5.当计算机即将出现四三连的情况时候,计算机就会自动去补齐。6.当计算机即将出现三三连的情况时候,计算机就会自动去补齐。8.当对方快或者已经出现三三连子的时候,电脑就会视优先级去拦截一个 第三章五子棋程序分析与设计判断五子棋输赢是先进行横向查找,且设置个初始值0,每次运行加1是否小于4是颜色是否相同否否判断胜利否是是否小于4先进行横向查找,且设置个初始值0,每次运行加1是颜色是否相同否否是先进行横向查找,且设置个初始值0,每次运行加1是否小于4是颜色是否相同是否是是否小于4最后进行反对角查找,且设置个初始值0,每次运行加1是颜色是否相同判断失败否 云南民族大学学士学位论文找,步骤和横向查找类似。若有,则判断胜利,若盘点位。若有,则证明判断失败,若没有则可以宣和电脑对战,还是和玩家联机务器端SocketSocket()建立流式套接字Bind()Socke()配置本地端口和IP建立流式套接字Listen()监听和接受服务器Accecpt()接受服务器请求建接Recv()和Send接受信息和发送信息ose接字Recv()和Send接受信息和发送信息Connect()与远端服务器连接Bind()配置本地端口和ose接字()()第三章五子棋程序分析与设计化。然后等待已注册好的客户2云南民族大学学士学位论文第四章软件的具体实现MouseListener听的接口。通过这个接口实现对五子棋的每项功能。第四章软件的具体实现选择难度(默认为中等难度),难度分为三种:简单,中等,困难。在玩家选择云南民族大学学士学位论文游戏的界面,无论是人机五子棋,还是人人五子棋在下棋的动作方面都如图4-1 第四章软件的具体实现拦截的情况下就会继续补齐1.当计算出的自己已经有四个连珠并且至少有一个没有被其他颜色棋子拦2.当计算出的对方已经有四个连珠并且没有被拦截住的情况就会去拦截。3.当计算出的自己已经有三个连珠并且没有被拦截的情况下就会继续补齐4.当计算出的对方已经有三个连珠并且没有被拦截的情况就会主动去拦当为四三连(三三连)连的时候它不拦截拦截的情况下就会继续补齐三个连珠并且没有被拦截的情况就会主动去拦云南民族大学学士学位论文 第四章软件的具体实现云南民族大学学士学位论文 第四章软件的具体实现4.5系统测试1)测试的重要性式、完善的开发过程,可以减少错误的引入,但是件开发项目中,软件测试工作量往往占软件开发总工作量的40%以上。而在软作。仍然存在一些不正确的看法和错误的态度,这包括:编码那样容易取得进展难以给测试人员某种成的测试是非建设性的,甚至是破坏性的,测试中自信,在发现错误后,顾虑别人对自己的开发能 云南民族大学学士学位论文(2)测试的目的。。4.6测试计划测试(1)测试目标:系统界面按钮的可用性。(3)测试步骤:。(4)测试结果:第四章软件的具体实现测试(1)测试目标:单机游戏是否正常。(3)测试步骤:(4)测试结果:云南民族大学学士学位论文试(1)测试目标:联网游戏是否正常。(3)测试步骤:(4)测试结果:3第四章软件的具体实现4.7测试结果行的,主要是对系统功能的分类,用不同的步骤,然后进行反复的能的配合度,系统的稳定性以及系统的人性化试,系统功能已达到预期的目标,系统是实用 第五章总结与展望第五章总结与展望我们学院的老师严谨、认真的为每位同学分配事,必须反复斟酌,细心努力。虽然毕 致谢致谢好路。对我的莫大帮助,他的帮助使我的设计过程对我知识的积累,我就不可能 云南民族大学学士学位论文JIcon.java程序:}rorccolorblackwhite}}Qipan.java部分程序:/***构造棋盘和算法**//** 连)(优先级第三)连)(优先级第四)连(四四连(四四三连(三三三连(三三*/}}} 云南民族大学学士学位论文}}}}}}}}voidinitfor(inti=0;i<row;i++){for(intj=0;j<row;j++){position[i][j]=0;}}} qizi[i][j]=position[i][j];}//画线for(inti=0;i<15;i++){}//画标记点//画棋子for(intj=0;j<row;j++){if(qizi[i][j]==-1){}elseif(qizi[i][j]==1){}}ifcurrentXcurrentY-1){}//显示胜出情况 云南民族大学学士学位论文}}/***///竖向for(intj=0;j<row-4;j++){if(position[i][j]==1&&position[i][j+1]==1&&position[i][j+2]==1&&position[i][j+3]==1&&position[i][j+4]==1){}if(position[i][j]==-1&&position[i][j+1]==-1&&position[i][j+2]==-1&&position[i][j+3]==-1&&position[i][j+4]==-1){}}//横行ifor(intj=0;j<row;j++){if(position[i][j]==1&&position[i+1][j]==1&&position[i+2][j]==1&&position[i+3][j]==1&&position[i+4][j]==1){}if(position[i][j]==-1&&position[i+1][j]==-1&&position[i+2][j]==-1&&position[i+3][j]==-1&&position[i+4][j]==-1){}} //正对角线ifor(intj=0;j<row-4;j++){if(position[i][j]==1&&position[i+1][j+1]==1&&position[i+2][j+2]==1&&position[i+3][j+3]==1&&position[i+4][j+4]==1){}if(position[i][j]==-1&&position[i+1][j+1]==-1&&position[i+2][j+2]==-1&&position[i+3][j+3]==-1&&position[i+4][j+4]==-1){}}//反对角线ifor(intj=4;j<row;j++){if(position[i][j]==1&&position[i+1][j-1]==1&&position[i+2][j-2]==1&&position
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- Unit3 It's Too Expensive(说课稿)-2024-2025学年北师大版(一起)英语四年级上册001
- 2025【各行各业合同协议模板】【各行各业合同协议模板】商铺转让协议
- 2025常用版工程工程合同样式
- 2023八年级英语下册 Module 9 Friendship Unit 1 Could I ask if you've mentioned this to her第二课时说课稿 (新版)外研版
- 2025墙体广告制作发布合同
- 2025国际贸易合同样本参考
- Unit 3 My weekend plan Part A Let's talk Let's learn大单元整体说课稿表格式-2024-2025学年人教PEP版英语六年级上册
- 9 生活离不开规则说课稿-2023-2024学年道德与法治三年级下册统编版
- 3 《百合花》 (说课稿)-2024-2025学年高一语文同步说课稿与知识梳理(统编版必修上册)
- Unit 4 My home PB Let's learn (说课稿)-2024-2025学年人教PEP版英语四年级上册
- 湖北省十堰市城区2024-2025学年九年级上学期期末质量检测历史试题(含答案)
- 2025公司开工大吉蛇年起航万象启新模板
- 企业人才招聘与选拔方法论研究
- GB/T 11263-2024热轧H型钢和剖分T型钢
- 2024年江苏省高考政治试卷(含答案逐题解析)
- 执业医师资格考试《临床执业医师》 考前 押题试卷(一)绝密1
- 2024七年级数学上册第六章几何图形初步综合与实践设计学校田径运动会比赛场地课件新版新人教版
- 《三国演义》题库单选题100道及答案解析
- 全国网约车出租车驾驶员公共题模拟考试题及答案
- 新人教版一年级数学下册全册教案(表格式)
- 简易三方换地协议书范本
评论
0/150
提交评论