五子棋java设计文档

五子棋java设计文档

ID:11066966

大小:184.50 KB

页数:13页

时间:2018-07-09

五子棋java设计文档_第1页
五子棋java设计文档_第2页
五子棋java设计文档_第3页
五子棋java设计文档_第4页
五子棋java设计文档_第5页
资源描述:

《五子棋java设计文档》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、安阳工学院JAVA课程综合项目报告项目题目:五子棋专业班级:12网工专升本学生姓名:阮营营学生学号:201203060042指导教师姓名:许研2012年12月安阳工学院计算机学院制12目录一、系统目标2二、系统设计思路2三、系统详细设计2四、系统实现9五、系统设计总结12六、参考文献1212一、系统目标1、主要是介绍开发五子棋的整个过程,体现流程设计与类设计的基本方法,示范了数组的使用,使用了分支结构与循环结构的流程控制2、通过课程设计把课堂上讲的内容融会贯通,学会设计程序、开发应软件、开发系统软件等各项工作。3、通过实习掌握语言的语法结构,理解类和对象的概念,准确的使用各种数据类型,对面向

2、对象中的继承和多态的概念要理解、会使用,在程序中提高代码的重用性,使设计的程序结构清晰、易于维护。二、系统设计思路1、获取棋盘设计一个11╳11围棋棋盘,由两玩家交替进行对战,并可以实现以下功能。五子棋的规则为:2、下棋方法两人分别执黑白两色棋子。轮流在棋盘上选择一个无子的交叉点落子,无子的交叉点又被称为空点。3、输赢判断每次下完一颗棋子,就通过程序从横、竖、斜各个方向扫描棋盘,如果在某个方向中,有同种颜色的棋子达到五连子,则此颜色的玩家为赢。如果没有相同颜色的棋子达到五连子,则继续游戏。三、系统详细设计3.1程序流程图123.2创建棋盘类,绘制棋盘的样式main方法创建了ChessFram

3、e类的一个实例对象,并启动屏幕显示显示该实例对象。publicstaticvoidmain(Stringargc[]){myframef=newmyframe();}构造五子棋的主窗体:classmyframeextendsFrameimplementsWindowListener{mypanelpanel;myframe(){setLayout(null);panel=newmypanel();add(panel);panel.setBounds(0,23,360,360);12setTitle("单人版五子棋42阮营营");setBounds(200,200,360,383);setVi

4、sible(true);addWindowListener(this);初始化棋盘:mypanel(){Is_Black_True=true;for(inti=0;i<11;i++){for(intj=0;j<11;j++){chess[i][j]=0;}}规定棋盘的宽度、高度、棋盘的模式:setBounds(0,0,360,360);setVisible(true);窗体响应事件:publicvoidwindowDeactivated(WindowEvente){}publicvoidwindowActivated(WindowEvente){}publicvoidwindowOpened

5、(WindowEvente){}publicvoidwindowClosed(WindowEvente){}publicvoidwindowIconified(WindowEvente){}publicvoidwindowDeiconified(WindowEvente){}3.3编写一个功能判断落子的位置及画出相应的黑白棋子12定义鼠标响应事件,判断该坐标位置是否可下棋子:publicvoidmousePressed(MouseEvente)判断该坐标位置是否可下棋子:voidDrawchess(Graphicsg){for(inti=0;i<11;i++){for(intj=0;j<11

6、;j++){if(chess[i][j]==1){g.setColor(Color.BLACK);g.fillOval((i+1)*30-8,(j+1)*30-8,16,16);}if(chess[i][j]==2){g.setColor(Color.WHITE);g.fillOval((i+1)*30-8,(j+1)*30-8,16,16);3.4判断输赢voidJustisewiner(){intblack_count=0;intwhite_count=0;inti=0;for(i=0;i<11;i++)//横向判断{for(intj=0;j<11;j++){if(chess[i][j]

7、==1){black_count++;if(black_count==5){JOptionPane.showMessageDialog(this,"黑棋胜利");Clear_Chess();12return;}}else{black_count=0;}if(chess[i][j]==2){white_count++;if(white_count==5){JOptionPane.showMessageDialo

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

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

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