求解用python 编写五子棋怎样编写判断输赢的函数,应该从哪方面考虑呢?最好有代码,,,,谢谢

我是Python的自学加初学者,刚学了几天。电脑上没有pythonCard,我只用了pygame把棋子做成动画精灵组,,,但不知到该怎么判断输赢。虚心向各位前辈求教,,,,

你都做到这个程度了,当然就是高手了。 把棋子位置放在一个数据里。然后做一个路径搜索算法。只搜索8个方向,如果某个方向有5个子连在一起就赢了。

这是个笨方法,还有很多优化的地方,比如上一次搜索后,建立一个路径数组。下一次,只需要检验上一次结果,并将新的棋子放进路径里就可以了。 这样就效率很高了。

具体的你自己研究。这个对你来说应该轻松啦。追问

非常感谢你的回答,只是我真的才学习python不到一周。你所说的路径搜索我估计明白一点,但我真的不知道怎么做,能不能给一个路径搜索的例子,我参考参考估计才能正在明白,麻烦你了,,,

追答

比如设置一个数组,它是包括2个棋子连成的一条线,它的类型就是连线方向。新棋子落下后,找附近8个方面的棋子,如果它们在数组里,就检查是否与数组构成同一个方向的延伸,如果构成就合并进去。当一个数组长度超过5个就是赢了。

温馨提示:内容为网友见解,仅供参考
第1个回答  2018-07-03
您能把你的五子棋代码给我发一下么,我想看看你怎么写的
相似回答