摘要:本次的课题是火柴游戏的程序设计,其主要内容是设计25及m根火柴,由计算机与游戏者进行比赛,每次最多拿5根及n根,最少拿1根,谁拿最后1根谁输,使计算机尽可能嬴。刚接触到的时候觉得很不可思议,因为当火柴总数变得很大的时候,人也很难猜想要如何拿才能取胜。后来,通过设计总数为25根火柴时的情况,总结分析,得到解决此类问题的方法和概念,对火柴总数为m根时所需要进行的处理有了大致的了解。总结归纳,知道了人与计算机依次拿取火柴的过程中,后手方可根据先手方取走的火柴数来作出自己的选择,可以保证每轮取走的火柴数目固定为每次最多可拿的火柴数目+1。由此形成一种循环。无论火柴总数怎么变化,无论每次最多可拿数怎么变化,总会有相应的方式来解决这一问题。22488 毕业论文关键词: 火柴总数;每次最多;方法;概念;循环
The Program of Match Game
Abstract: This subject is the program design of match game, whose main content is to make the computer beat the player as much as possible by avoiding getting the last match of all 25 plus m matches. In the game, the computer and the player will take matches away in turns, with a maximum of 5 plus n and a minimum of 1 each time. It’s hard or even unimaginable for people to work out a victory plan as they first get to know the game, let alone when the total number of matches is huge. Later, the processing method is generally framed through the analysis and deduction of the case with a total of 25 matches. The other player can always take away 1 more match accordingly to the number taken by the player who takes the first strike, and so on and so forth. No matter how the detail of the game changes, regardless of the number taken by the first mover, there is always an appropriate way to solve this problem.
Keywords: match; turns; methods; concept; loop
目录
摘要 i
Abstract i
目录 ii
1 绪论 1
1.1 选题背景 1
1.1.1 选题分析 2
1.1.2 代码的格式 2
2 分析 5
2.1 基于火柴总数目为25,每次最多取得数目为5的假设分析 5
2.2 基于火柴总数目为25,每次最多取得数目为5的进一步分析 6
2.3 由火柴总数目为25到M,每次最多取得数目为5到N的归纳 7
2.4 火柴总数目为M,每次最多取得数目为N的进一步分析总结 8
3 设计 9
3.1 工具与语言的介绍 9
3.2 算法设计思路 10
3.3 程序的主要流程 13
3.4 程序运行效果图 14
4 结论 30
4.1 总结 30
致谢 33
参考文献 34
1 绪论
1.1 选题背景
深蓝是美国IBM公司生产的一台超级国际象棋电脑,重1270公斤,有32个大脑(微处理器),每秒钟可以计算2亿步。
人与计算机的首次对抗是在1963年。国际象棋大师兼教练大卫•布龙斯坦怀疑计算机的创造性能力,愿意用自己的智慧与计算机进行较量。他有一个非常不利的条件:让一个皇后。但当对局进行到一半时,计算机就消灭了布龙斯坦近一半兵力。1997年5月11日,在人与计算机之间挑战赛的历史上可以说是历史性的一天。计算机在正常时限的比赛中首次击败了等级分排名世界第一的棋手。加里•卡斯帕罗夫以(1胜2负3平)输给 IBM 的计算机程序 “深蓝”。机器的胜利标志着国际象棋历史的新时代,也标志着人工智能开创了一个新的时代。