行同样的操作;最后把左右两边的记录合并起来,得到的数据就是该点横向上的棋型,然后把棋型的编号填入到Computer[x][y][n]中就行了(x、y代表坐标,n=0、1、2、3分别代表横、竖、左斜、右斜四个方向) 。而其他三
个方向的棋型也可用同样的 *** 得到,当搜索完整张棋盘后,己方棋型表也就填写完毕了 。然后再用同样的 ***
填写对方棋型表 。
注重:所有棋型的编号都要事先定义好,越重要的号数越大!
OK! 怎么样?有点累了吧?不过千万别泄气!因为好戏还在后头 。
Let's go!
(5)电脑下子:有了上面填写的两张棋型表,现在要作的就是让电脑知道在哪一点下子了 。其中最简单的
计算 *** ,就是遍历棋型表Computer[15][15][4]和Player[15][15][4]找出其中数值更大的一点,在该点下子即
可 。但这种算法的弱点非常明显,只顾眼前利益,不能顾全大局,这就和许多五子棋初学者一样犯了“目光短浅”
的毛病 。
要解决这个问题,我们引入‘今后几步猜测法’,具体 *** 是这样的: 首先,让电脑分析一个可能的点,
假如在这儿下子将会形成对手不得不防守的棋型(例如:‘冲四’、‘活三’);那么下一步对手就会照您的思
路下子来防守您,如此一来便完成了之一步的猜测 。这时再调用模块4对猜测后的棋进行盘面分析,假如出现了
‘四三’、‘双三’或‘双四’等制胜点,那么己方就可以获胜了(当然对黑棋而言‘双三’、‘双四’是禁手
,另当别论);否则照同样的 *** 向下分析,就可猜测出第二步、第三步……
等一等,要是盘面上没有对手必须防的棋型,哪该怎么办呢?进攻不成的话就得考虑防守了,将自己和对手
调换一下位置,然后用上面的 *** 来猜测对手的棋,这样既可以防住对手巧妙的攻击,又能侍机发动反击,何乐
而不为呢!
但是必须告诉大家的是:猜测法的运算量相当之大,据我的经验,用Pentium-100猜测3步的走法平均需要15
秒以上时间,所以建议猜测量在5步以内 。可别小瞧了这5步,有时它甚至会走出让您拍手叫绝的妙着呢!
(6)胜败判定:务须多言,某方形成五子连即获胜;若黑棋走出‘双三’、‘双四’或长连即以禁手判负 。
到现在为止,整个五子棋软件就基本完成了,其水平大约在中级上下 。当然,这种算法并不是更好的,但我
相信它的基本思路是正确的 。
本文到此结束,如果可以帮助到大家,还望关注本站哦!
推荐阅读
- 安徽蚌埠钢材价格,安徽蚌埠钢材价格表?
- 玉屏风口服液对鼻炎有效果吗,玉屏风胶囊对鼻炎有效果吗
- 天下三春无正色的意思 正色的意思
- 无人机限高多少米违法 无人机限高多少米
- 问道羽化丹怎么用 问道羽化
- 八字日干算命:癸丑日柱午月生,对象好不好
- 蒸汽烘干机,蒸汽烘干机与电加热烘干机
- 碗莲的品种大全,碗莲的品种及图片
- 用对方手机号怎样查出对方的位置,如何用手机号查到对方的位置
- 如何加强五帝钱的功效 门对门什么日子挂五帝钱好