work_8
1.把程序编译通过, 跑起来。
读懂程序,在你觉得比较难懂的地方加上一些注释,这样大家就能比较容易地了解这些程序在干什么。
把正确的 playPrev(GoMove) 的方法给实现了。 如果大家不会下围棋,那就需要大家实地或者上网练习一下围棋的死活,提子是怎么回事。这个应该一个小时就能搞定。
代码如下:
public void playPrev(GoMove gm)
{
Grid[m_gmLastMove.Point.X, m_gmLastMove.Point.Y].removeStone();//删除当前点
m_gmLastMove=gameTree.peekPrev();//对上一个点更新,能够连续回溯
if(gm.DeadGroup!=null)//对气进行恢复
{
foreach (Point pt in gm.DeadGroup)
{
repaintOneSpotNow(pt);
Grid[pt.X, pt.Y].setStone(gm.DeadGroupColor);
}
}
optRepaint();//更新
return;
}
playPrev
2.根据你选择的教材 (三本之一或更多),点评一下这个程序设计方面的不足。
1.带有绿波浪线的变量为未使用的变量,应予以删除。
2.代码都压缩在一起,很不直观,而且不好维护,应该把不同功能的类放在不同的文件中,有更好的命名空间,便于理解。
3.错误处理不好,没有使用try catch块。
4.编码风格还好,格式规范,且变量的命名基本可以理解,不过也有些m_n之类的变量不易理解。
5.UI很简约,不过也可以做的更美观。
3.程序的注释。
已经尽量把大部分“ZZZZ”恢复过来,后面关于文件的处理没太看懂,代码在github中。
4.选择题。
还没有想到什么好的可修改的功能。。。等有了灵感再写好上传到github吧
对于人机对战和双人对战是很感兴趣的,大一时候做过四子棋的比赛,程序应分为两个模块,一个模块首先将当前气、棋盘等信息传入到AI返回值函数,得到返回值后对返回值进行处理,更新气、棋盘等信息;另一个模块则是处理人的输入,与现有的程序对输入的处理类似。
对于网络对战对于网络传输不是太懂,不过功能应该类似,对两个人的输入分别处理后对各项信息进行传输。
5.关于脑电波那篇论文只能说不明觉厉。。。
work_8的更多相关文章
- Java常用工具类练习题
1.请根据控制台输入的特定日期格式拆分日期 如:请输入一个日期(格式如:**月**日****年) 经过处理得到:****年**月**日 提示:使用String的方法indexOf.lastIndexO ...
随机推荐
- 即时通信Spark安装和配置
spark:Cross-platform real-time collaboration client optimized for business and organizations.Spark i ...
- UVa 12169 (枚举+扩展欧几里得) Disgruntled Judge
题意: 给出四个数T, a, b, x1,按公式生成序列 xi = (a*xi-1 + b) % 10001 (2 ≤ i ≤ 2T) 给出T和奇数项xi,输出偶数项xi 分析: 最简单的办法就是直接 ...
- codevs 3290 华容道
HAHAHA BFS+SPFA. #include<iostream> #include<cstdio> #include<cstring> #include< ...
- php通过curl调用jpush接口实现消息的推送
public function actionNotifyto() { //$regid = $_REQUEST['regid']; $url = 'https://api.jpush.cn/v3/pu ...
- 在linux下实现用ffmpeg把YUV420帧保存成图片
在网上搜了很久相关的问题,但是好像没有一个在linux下跑得比较完整的例子,不过经过自己一番搜索和总结,终于做出来了,哈哈,看下面的代码吧. 这个例子可以保存成bmp或者jpeg格式的图片. 下面的结 ...
- 庖丁解牛-----Live555源码彻底解密(RTP解包)
Live555 客户端解包 以testRTSPClient.cpp为例讲解: Medium<-MediaSource<-FramedSource<-RTPSource<-Mul ...
- 【转】iOS类似Android上toast效果
原文网址:http://m.blog.csdn.net/article/details?id=50478737 做过Android开发的人都知道toast,它会在界面上显示一排黑色背景的文字,用于提示 ...
- 【转】VI/VIM常用命令
原文网址:http://www.blogjava.net/woxingwosu/archive/2007/09/06/125193.html Vi是“Visual interface”的简称,它在Li ...
- TCP/IP详解学习笔记(14)-TCP连接的未来和性能(未写完)
在TCP刚出世的时候,其主要工作环境是以太网和SLIP之类的低速网络.随着高速网络的出现,让TCP协议的吞吐量更大,效率更高的要求就愈来愈迫切.为此,TCP增加了三个重要机制来对应现在的变化,他们是 ...
- 获取某月第一天,最后一天的sql server脚本 【转】http://blog.csdn.net/chaoowang/article/details/9167969
这是计算一个月第一天的SQL 脚本: SELECT DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) --当月的第一天 SELECT DATEADD(mm, DA ...