首页资讯科技 井字棋游戏规则

井字棋游戏规则

陈新龙井字棋,英文名叫Tic-Tac-Toe,是一种在3×3格子上进行的连珠游戏,和五子棋类似,由于棋盘一般不画边框,格线排成井字故得名。游戏需要的工具仅为纸和笔,然后由分别代表O和X的两个游戏者轮流在格子里留下标记(一般来说先手者为X),…

井字棋游戏规则

陈新龙

井字游戏,英文名,是一种在3×3格子上玩的五子棋游戏。类似五子棋,因棋盘一般无边框,格子线呈井字排列而得名。游戏需要的工具只有纸和笔,然后分别代表O和X的两个玩家轮流在格子中留下标记(一般来说第一个玩家是X),任意三个标记形成一条直线,即为胜者。因为难度低,景子象棋经常被用作儿童游戏。玩过这个游戏的人都会发现,如果双方都做出最佳选择,这个游戏就会出现平局。这个游戏虽然简单,但是整个数学计算的过程要复杂得多。理论上讲,井字游戏总共可能有19683种现象!今天,让我们用Scratch来制作井字游戏。这个游戏的代码没有大家想象的那么难。只要大家紧紧跟着思路走,就不会有问题。让我们一起开始(图1)。

首先,我们创建所需的角色和背景。点击舞台背景,在建模中画四条线作为棋盘。线与线之间的间距略宽松,厚度略厚。然后写出X WIN和O WIN结尾的背景形状。

完成三个背景形状后,创建一个新角色。这个角色的形状需要加上四种不同的形状,分别是两个正方形,比棋盘略小。颜色一白一灰,用来遮挡和显示鼠标焦点。当鼠标移动到棋盘上的格子时,颜色切换为灰色,默认颜色为白色。另外两个字符是X和O来代表棋子。准备好的背景和角色如图2所示。

一切准备就绪后,就可以开始写代码了。我们先给棋盘的每个格子编号,数字1在左下角,数字9在右上角。使用两个变量sign_num(标记每个方块的编号)和toggle(标记每个方块后面的X或O)。

将字符形状切换到白色正方形,并将其移动到第一个位置(-115,-112)。套用双循环,每次重复3次,克隆自己,x坐标增加115(x和y的值根据棋盘和人物方块的实际高度和宽度计算,可自行调整)。同时,sign_num的值增加1,内循环结束。将X坐标重置为-115,返回到左侧网格的坐标,并将Y坐标增加110。字符到达中线。3×3个循环后,棋盘中的每个方格都有一个克隆体(如图3所示)。

为了标记这些克隆,我们创建了一个新的列表单元格和一个变量count。默认情况下,我们删除单元格中的所有内容,将变量count设置为10,重复9次,并在列表中添加数字10-19,对应9个位置的角色。该列表有两个功能。第一,它作为一个数字来区分方块。第二,游戏中用列表中的数字代替X和O来记录棋局。第一步到此结束(如图4所示)。

游戏开始后,所有克隆体在棋盘上快速铺开,初始状态是所有方块都是白色形状(形状数=1)。我们移动鼠标开始游戏。当我们触摸鼠标指针时,我们切换到灰色形状(形状编号=2)。之后我们分为两种情况:点击鼠标和移动鼠标,不做任何操作。

当鼠标被按下,并且在这个位置没有棋子时(形状数=2),你可以下棋。根据井字游戏的规则,两个玩家轮流按鼠标划十字(X),画圆(O)。我们可以通过切换变量来控制X和O的顺序。当toggle为奇数时(toggle除以2 =1的余数表示toggle为奇数),切换到O形,当toggle为奇数时。鼠标每单击一次,切换值就增加1。

当没有点击操作时,鼠标移开,灰色块恢复为白色块。

到目前为止,游戏已经可以运营了,但是缺少了判断胜负最重要的一环,那就是需要判断是否有连续三场比赛。井字游戏和五子棋不同。赢的可能性只有八种,三条横线,三条竖线,两条对角线。我们只需要一一列举这八种方式。例如,当列表中的第一项=第二项=第三项时,对应方块中的位置1、2、3正好水平连成一条线。在实际操作中,使用“项目1 =等于2,等于2 =项目3”。然后根据盒子里的内容,判断哪一方取得了胜利。最后,将胜利消息广播到后台进行显示(如图5所示)。

至此,我们的井字游戏也圆满完成了。在这里,陈骁先生留下了一个问题。目前我只判断井字游戏是赢是输。如果最后结果是平局,我该如何用代码表达?整个问题留给大家。大家一起思考,期待大家的回答。

本文来自网络,不代表管理窝立场。转载请注明出处: https://www.guanliwo.com/a/zx/63758.html
上一篇问卷星怎么制作选择题
下一篇 趣味数学脑筋急转弯
管理窝

作者: 管理窝

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部