首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

第一次发贴测试。实习项目象眼的判断有关问题

2012-02-11 
第一次发贴测试。实习项目象眼的判断问题在中国象棋中象或相的走棋是只可以走田字对角。但田字的中间有棋的

第一次发贴测试。实习项目象眼的判断问题
在中国象棋中象或相的走棋是只可以走田字对角。但田字的中间有棋的话,就不可走。
似乎在多数书中,都是以距离来确定规则,不过我写的程序中没有距离的判定,只以行和列来判定走棋是否符合规则。
代码(delhpi做的,其实无所谓,语言只是个工具,很容易翻译成别的语言):
if (getzi='象') then
  begin
  if (abs(gzr-gzor)=2) and (abs(gzc-gzoc)=2) and
  (gzr>5) then //判断是否在本棋区域,不重要

  if qpArray[(gzc+gzoc) div 2,(gzr+gzor) div 2]='' then 
  qizigz:=true;

"gzr"就是"规则row","gzc"就是"规则行","gzor,gzoc"就是“规则中旧的行和旧的列”。
关键在于qpArray[(gzc+gzoc) div 2,(gzr+gzor) div 2]='' ,
意思是象或想的所在(行+旧行)除以2,和(列+旧列)除以2 为空的话,规则就成立,象或相可以移动。我觉得这个方法也不错的,当然可能早有人用过,只是在网上资料中没见过。

[解决办法]
这种方法,在打虎将的象棋演播室中用过的。
[解决办法]
测试将错误行及提示信息发上来来

[解决办法]
一个意思,有什么问题吗?我也写过一个,只是觉得估值函数不太好

热点排行