用java实现五子棋人机博弈

用java实现五子棋人机博弈

ID:9230158

大小:634.33 KB

页数:6页

时间:2018-04-24

用java实现五子棋人机博弈_第1页
用java实现五子棋人机博弈_第2页
用java实现五子棋人机博弈_第3页
用java实现五子棋人机博弈_第4页
用java实现五子棋人机博弈_第5页
资源描述:

《用java实现五子棋人机博弈》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、·…,·‘.…叭朋IP-…姗a用Jav实现五子棋人机博弈仇宾苏双雷摘要:本文介绍在NeatBeanSID.0环境,E5中开发五子棋人机对战版的过程并且对人机博弈的基础算法进行了详细的探讨关键词:NeatBeans;五子棋;人机博弈;Java;算法uessoar、PbljChebd《){一引言initComponents();//系统给出五子棋是一款非常经典的小游戏,相信大多数人都玩过,add《ebBoard);//加入棋盘面板.,,,eoarsetounds其中的博弈算,bBdB《101045045

2、0》;法很多文章都有过专门的介绍不过大都比较add(Jpstate);//加入状态面板,。,深而且没有完整的实现过程笔者经过几天的摸索终于在.psseuns.,,jtatetBod《47040150300);a。NeatBeans环境中用Jav语言实现该游戏现在把整个实现过},。程写出来供广大编程爱好者参考PrivateCBboardebBoard二newCBboard();//新建棋盘PublieJPstatezPState=newJPstate();//新建状态、二设计思路3.棋盘与棋子的实现“

3、”,巧*,‘五子棋人机博弈顾名思义就是玩家与电脑下采用巧的棋盘即棋盘由15条横线j巧条竖线拼棋,因此需要考虑如下几个—方面:成,共15*15个下棋点。..-ane,,oaravar:,:要实现五子棋,新建一个JPl窗体取名CBIdJ然后J月(;Ih(l)棋盘与棋子的实现首先要有玩五,,,。e。anexx,。i类的击wLi(一ylZyZ)函数在面板上画棋盘代码实子棋的平台即画出棋盘与棋子:(2)计算机博弈算法的实现:,现如下玩家落子后计算机要根据当前,。ProteetedvoidPaintComPon

4、ent(GraPhiesg){的棋局寻找最佳落子点并落子这是本游戏的实现关,。//画棋盘键本文将会重点介绍..intw二(int)CBboardt卜15geidth();//得到棋盘的宽度:,tw(3)输赢的判断一个游戏无论好与坏最后都要分出n二nar.thi.ith(it)CBbodsget日eight();//得到棋盘的高度,。胜负因此如何判断输赢也是要重点讨论的间题9.seteo一or(Co一or.re白);//用红色线画棋盘、for《inti=boardlineX;l<=w一boardlin

5、eX;i+=《《w一三具体设计ne*,一boardliX2)/(ModelMaxlineY1)》》//画竖线..,,,NeatBeans,“”9drawLine《1boardlineYih一boar山in一6)首先打开并新建一个项目选择常规ey:r-“ava”,“eess”。fo(intJ=boa司IineY;1<=h一board!iney;i+二《《h一boardj应用程序项目命名为hs.IineY*2)/(ModefaxlineX一1//画—.M川横线1创建公共模块.,,,9drawLine(b

6、oardlineXJw一boardiineX一6」);创建公共模块是为了存放公共常量与公共变量。代码如}:rvaenan下Pitfi!itboard.ineX=12;//边界宽度PubleelassMoelprivatefinalintboardliney=12;//边界高度id{u,、J’P以iestatiefinalintMaxlinex二15;//棋盘的横线数其中代码中所定义的常量是为代码修改容易而设为PubliestatiefjnaiintMaxlineY二15;//,)re:,棋盘的竖线数

7、界面美观稍稍修改一下CBIoa司的hod属性打开该属性」,),“”“eo”框然后在可用边框里选择Bev旧rder.2,、创建顶层容器:alltl不是注意现在还无法看到所设计的棋盘原因是JP,、创建顶层容器是为了实现软件模块化把软件分成棋盘,所以还要为它建一个顶层容器,而这个容器在顶层容器2中、,。状态控制等再用顶层容器去包含它们。ss已经建好了可以在Cheboard里预览一下效果(需要注释掉.e,sa。新建一个JFram窗体命名为Chesboardjav然后把其ehessboard里,预览效果如图l

8、。的一些代码),:它模块加进来代码实现如下棋盘实现了,就可以在L面添加棋子了。为了实现下棋,2009.5.1技巧与纽护、·招,甲叫4口,声‘声户、几乡补甲矛沪,杯一三实用第智慧密集岛-.、目困抽石州协.,.一介悦之一杏奋孰*一户趾奋,t‘,魁,一叭协,一瓦一简剐形‘,一玩一,之.资儿‘淤之,r.比里爪,,.--一二思-,int{oeationl二0loeat一onJ二0;.,for(inti二0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。