您的当前位置:首页正文

什么样的编程水平可以编写五子棋、象棋程序?

2010-07-25 来源:年旅网

有网友碰到这样的问题“什么样的编程水平可以编写五子棋、象棋程序?”。小编为您整理了以下解决方案,希望对您有帮助:

解决方案1:

针对问题补充部分:

如果这个程序是人人对战的,那和人工智能完全没有关系。

但是如果你要编写一个带机器人可以人机对弈的程序,那这个机器人的设计就是人工智能了。这个难度会大出数倍的(五子棋可能好一些)。不过也有人因为编写了战胜世界冠军的战棋类机器人而出名过(当然他们用的硬件也很强),如果楼主能编出来这种程序,估计就可以商用往外卖了。

人工智能里面要学的东西很多,从理论框架到具体的机器学习算法(这个算法和ACM里面的简单算法完全是两回事)。如果楼主不是这个专业的, 而编写这种程序更多的是为了练习编程,那么还是建议不要涉猎人机对战的部分了。

如果真的感兴趣,建议等真的有很多时间可以开发个带机器人的2.0版本来(楼主要真能写出来,加我好友吧,我们可以互相交流一下,哈哈,主要是我向你学习一下)

=========================
我有个同学以前编过一个。自己曾经也试图编扫雷,写了一半最后还是放弃了。。。

编程水平的话,首先要有基本的语言知识,能够相对熟练地编写百行以上的程序吧。

当然上面的要求太基础了,要编这种棋类程序还需要两点技巧:

1. 可视化编程,比如c++的话就需要熟悉win32编程或者MFC编程。这样才能让程序可以看到,并且视窗交互。(我也见过一个cmd版本的五子棋,很惊叹,不过样子就不好看了)

2. 复杂逻辑的处理。无论是五子棋和象棋,都有自己的规则。这些规则人描述起来都比较麻烦,要正确的反应到程序中,就需要维护很多状态信息,加入很多判断函数(比如是否已经获胜、走法是否合法、等等)。如果你可视化编程已经没有问题,你会发现这部分逻辑设计难度是远远大于语言本身的。

如果以上两点都可以克服的话,这种程序是可以编出来的。楼主加油吧。

解决方案2:

普通程序员水平

解决方案3:

技术有技术水平 这是算法问题 算法OK 懂点就行了

所有人工智能 都是人编出来的!

解决方案4:

很简单的AI,学完就能看懂了!

解决方案5:

熟悉算法

显示全文