java五子棋报告

java五子棋报告

ID:39551627

大小:145.00 KB

页数:12页

时间:2019-07-06

java五子棋报告_第1页
java五子棋报告_第2页
java五子棋报告_第3页
java五子棋报告_第4页
java五子棋报告_第5页
资源描述:

《java五子棋报告》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、五子棋一、程序功能介绍设计一个20*20的五子棋盘,由两个玩家交替下子,并且可以实现以下功能:1.鼠标点击横竖线交汇处落子2.通过落子使得五个黑子或者五个白子在一条横线、竖线或斜线上2.重新开始按钮刷新重新开始3.检查是否实现了五子连珠4.有一方五子连珠时提示结果5.结束按钮结束程序二、课程设计过程1.如图一:程序流程图2.程序功能设计(1)先写draw类,在类中先画出一个Jframe窗口体,在这个窗口体上增加重新开始,退出,和主棋盘按钮。并且设置监听按钮的监听。并在draw类中设置主函数启动程序。(2)fivechess类实现程序的功能,定义wh_array二维数组表示棋盘。定义wh

2、_arr一维数组,将wh_array值通过从上往下转换成一维,可用于判断输赢。定义paintComponent(Graphicsg)绘图函数,将整个棋盘给画出。3.程序中用的变量、方法、类等classfivechessextendsJPanel{}//定义变量,落子监听,判断输赢int[][]wh_array=newint[20][20];//定义二维数组,表示棋子在棋盘的位置int[]wh_arr=newint[430];//定义一维数组,转换二维数组,判断是否连线publicvoidmouseClicked(MouseEvente)//单击鼠标落子并且判断输赢publicfivec

3、hess(){}//鼠标操作protectedvoidpaintComponent(Graphicsg)//绘图函数publicDimensiongetPerferredSize()//返回期盼大小publicclassdrawextendsJFrame{}//添加按钮,设置监听,启动程序publicdraw()//绘制窗口,增加重新开始和退出按钮b.addActionListener()//重新开始按钮设置监听exit.addActionListener()//退出按钮设置监听publicstaticvoidmain(Stringargs[]){}//主函数启动程序三、程序设计的完整

4、代码及注解//双人对战五子棋importjava.awt.*;importjava.awt.event.*;importjavax.swing.*;classfivechessextendsJPanel{//函数intwh_color,x1,y1,wh_x,wh_y,wh_i,wh_j,wh_arri,wh_stop=3;//定义各种整型变量//x1,y1表示坐标wh_x,wh_y圆大小坐标wh_i,wh_j二维数组booleanwh_rf;//定义布尔型变量,判断玩家Strings;int[][]wh_array=newint[20][20];//定义二维数组int[]wh_arr=

5、newint[430];//定义一维数组publicfivechess(){//鼠标操作for(inti=0;i<20;i++){//给二维数组赋值为0for(intj=0;j<20;j++){wh_array[i][j]=0;//赋值为0}}for(inti=0;i<400;i++){//给一维数组赋初始值0wh_arr[i]=0;}addMouseListener(newMouseListener(){//鼠标监听器publicvoidmouseClicked(MouseEvente)//单击鼠标{Graphicsg=getGraphics();if(wh_stop==3)//当w

6、h_stop==3时运行程序{x1=e.getX();//返回鼠标当前x坐标y1=e.getY();//返回鼠标当前y坐标wh_i=(x1-54)/32;//计算列值wh_j=(y1-34)/32;//计算行值wh_arri=20*wh_j+wh_i;//计算二维数组变为一维数组时的对应值if(x1>54&&x1<694&&y1>34&&y1<674)//在棋盘范围内单击鼠标才运行程序{if(wh_array[wh_i][wh_j]==0)//当二维数组取值为0时运行程序{wh_rf=!wh_rf;//Boolean值单击后循环变化if(wh_rf==true)//Boolean值为T

7、RUE时{wh_color=1;//令wh_color=1s="黑棋";wh_array[wh_i][wh_j]=1;//对应的二维数组值赋为1wh_arr[wh_arri]=1;//对应的一维数组赋值为1}if(wh_rf==false)//Boolean值为FALSE时{wh_color=2;//wh_color为2s="白棋";wh_array[wh_i][wh_j]=2;//对应的二维数组值赋为2wh_arr[wh_arri]=2;//

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

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

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