设计井字棋的走法?(200分)

  • 主题发起人 张利中
  • 开始时间

张利中

Unregistered / Unconfirmed
GUEST, unregistred user!
现有井字棋如下说明文档,请教如何设计其走法.
即如何让计算机判断落子的位置??
游戏规则阐述:
井字棋游戏的棋盘由五行五列的直线相交而成,形成“井”字形状对弈双方:人和电脑。
落子规则:对弈双方可以在棋盘上任意两条线的交点处(假定称之为落点)落子。人和电脑分别使用形状相同而颜色不同的棋子。以人为例(对电脑一方也同样适用),在落子过程中,若
出现下列情况之一:
(1)以左边最外侧的棋盘边界线为基准,若有三颗棋子所在的直线与其成45度角
(2)以左边最外侧的棋盘边界线为基准,若有四颗棋子所在的直线与其成45度角
(3)以左边最外侧的棋盘边界线为基准,若有五颗棋子所在的直线与其成45度角
(4)五颗棋子在一行或一列
(5)四个棋子分别落在四个相邻交点,且成"井"字形状.
对另外其他3条边界线,情况(1)(2)(3)也适用.
则人可以吃掉电脑一方的一个棋子。
但是,在棋盘没有落满棋子之前,被一方吃掉的棋子不能拿下,只能先做一个标记。当双方将棋盘占满棋子之后,方能将先前做了标记的棋子拿下。
吃掉对方棋子的规则:(1)一方获得吃掉对方棋子的权利以后,只能吃掉对方除了上述五种成棋情况之外的其他棋子(即在成棋位置的棋子不能被吃掉)。(2)若对方只有成棋位置的棋子可吃,则可任选一个棋子吃掉即可。
双方将棋盘落满棋子以后,若没有带标记的棋子(即没有被吃掉的棋子),则后手者(即开局时后落子者)可以吃掉对方任意一个棋子。然后,先手者(即开局时先落子者)也同样吃掉对方任意一个棋子。若有带标记的棋子,则先将它们拿下。双方继续用剩下的棋子继续游戏,想方设法凑成上面所述的成棋格局。不同的是,此时只要吃掉对方一个棋子立即拿下。这里需要注意,剩下的棋子只能沿着棋盘线移动,每一次只能从一点沿水平或垂直方向到达与其相邻的其他点,不允许跳跃式地移动棋子。
判断胜负:当某一方的棋子只剩两个棋子时,则可判定该方落败。
 

Similar threads

I
回复
0
查看
528
import
I
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
顶部