五子棋游戏项目报告.docx

上传人:b****1 文档编号:2416003 上传时间:2022-10-29 格式:DOCX 页数:12 大小:35.33KB
下载 相关 举报
五子棋游戏项目报告.docx_第1页
第1页 / 共12页
五子棋游戏项目报告.docx_第2页
第2页 / 共12页
五子棋游戏项目报告.docx_第3页
第3页 / 共12页
五子棋游戏项目报告.docx_第4页
第4页 / 共12页
五子棋游戏项目报告.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

五子棋游戏项目报告.docx

《五子棋游戏项目报告.docx》由会员分享,可在线阅读,更多相关《五子棋游戏项目报告.docx(12页珍藏版)》请在冰豆网上搜索。

五子棋游戏项目报告.docx

五子棋游戏项目报告

《软件技术基础》课程项目报告

项目名称:

用VC++实现的五子棋游戏

专业班级:

G11009

项目成员:

崔光浩程德武付强付锤

李洪润尚振兴沈婷玉佟承雨周彤姣

指导老师:

殷黎

完成时间:

2011/10/31

摘要

一、需求分析-4-

开发背景-4-

项目目标-4-

运行环境

游戏说明-5-

项目任务书-5-

2.技术路线

总体方案

详细设计-7-

三、工程进度-9-

前期准备部分(「3)天・9-

中期实现功能部分(4・7)夭・9-

后期总结完善部分(8-10)天-9-

四、测试报告-10-

第5天:

测试棋谱-10-

第6天:

基本功能测试・10-

第7天:

悔棋功能-10-

第8天:

测试其他的附加功能-11-

第9、10夭:

总体测试-11-

五、个人小结-12-

六、主要算法-13-

1判断胜负-14-

2鼠标模拟-15-

摘要

五子棋是起源于中国古代的传统黑白棋种之一。

现代五子棋日文称之为“連珠”,英译为“Renju”,英文称之为"Gobang"或“FIR”(FiveinaRow的缩写),亦有“连五子”、“五子连”、“串珠”、“五目”、“五目碰”、“五格”等多种称谓。

五子棋不仅能增强思维能力,提高智力,而IL富含裤理,有助于修身养性。

五子棋既有现代休闲的明显特征“短、平、快”,乂有古典哲学的高深学问“阴阳易理”:

它既有简单易学的特性,为人民群众所喜闻乐见,乂有深奥的技巧和高水平的国际性比赛:

它的棋文化源渊流长,具有东方的神秘和西方的直观;既有“场”的概念,亦有“点”的连接。

它是中西文化的交流点,是古今哲理的结晶。

1.需求分析

开发背景

五子棋是一种两人对弈的纯策略型棋类游戏,是起源于中国古代的传统黑白棋种之一。

发展丁•日本,流行于欧美。

五子棋容易上手,老少皆宜,而£L趣味横生,引人入胜;不仅能增强思维能力,提高智力,而J1富含哲理,有助丁•修身养性。

传统五子棋的棋子分为黑白两色,采用围棋棋盘,棋子放置于棋盘线交义点上。

两人对局,各执一色,轮流下一子,先将横、竖或斜线的5个同色棋子连成不间断的一排者为胜。

棋类游戏规则简单,对外部耍求不高,人们可以随时随地进行对弈。

但是,真正能够精通棋类游戏的人却不是很多,主耍是棋类游戏具有变化莫测的特点,人们经常得在棋局上深思熟虑才能找到克敌制胜的办法。

因此,各种棋类游戏都具有开发智力的效能。

在休闲中使自己得到真正的长进,这或许就是其倍受人们青睐的原因所在!

项目目标

我们将主要通过VC++语言,运用面向对象的程序设计方法,开发此款五子棋游戏。

力争使程序短小精悍,简洁明了:

游戏界面优美,容易操作:

功能丰富,趣味性强。

现在将我们对项目期望实现的目标一一介绍:

a.能供两人对弈。

b.可以实现经典棋局的回放。

c.可以悔棋。

D.能实现棋局步数的排名。

e.操作方便,容易上手。

运行环境

本游戏短小精悍,而且对电脑配置的要求均不高,目前几乎所有的PC机均可运行该游戏。

但是为了能让大家更好地体验该款游戏,我们给出如下的最低配置:

最低配置:

CPUlGHz内存32M硬盘4GWindows95MicrosoftVisualC++

同时结合我们开发该游戏的环境,我们强烈推荐用户使用如下的配置:

最佳配置:

CPU2GHZ及以上内存256M及以上硬盘80G及以上WindowsXP及以上MicrosoftVisualC++

游戏说明

(1)游戏流程:

启动游戏后,显示主菜单。

里面包括开始游戏、读取游戏、排行榜、关丁•游戏、游戏帮助、退出。

读取游戏中包含经典棋局的回放和未下完的棋局。

排行榜中显示的是棋局步数的排名。

(2)游戏规则:

落子:

对阵双方交替落子,任何一方不能多下一步,也不能在已有棋子的地方继续落子,否则会有错误提示。

赢棋:

任何一方先出现在棋盘的横、纵或斜线上形成连续的五子,则该方获胜。

排行榜:

可以判断赢者是否可以进入排行榜。

⑶特别提示:

双人对弈模式下,悔棋的过程为:

首先由玩家向对方发送悔棋请求(悔棋消息),然后由对方决定是否允许玩家悔棋,在玩家得到对方的响应消息(允许或者拒绝)之后,才进行悔棋与否的操作。

项目任务书

(1)班级:

G11009

⑵组长:

隹光浩

⑶成员:

尚振兴、李洪润、沈婷玉.程德武、付强、周彤娇、佟承雨、付饪⑷项目名称:

五子棋

(5)项目背景:

五子棋是起源『•中国古代的传统黑白棋种之一。

五子棋不仅能增强思维

能力,提高智力,而IL富含哲理,有助于修身养性。

五子棋既有现代休闲的明显特征“短、平、快”,乂有古典哲学的高深学问“阴阳易理”。

(6)项目分工:

程德武:

显示棋盘、显示帮助、游戏版权、显示在线帮助文档。

李洪润:

排行榜全部。

付强:

下棋、经典棋局的回放。

沈婷玉:

构造函数、初始化所有数据、析构函数。

尚振兴:

负责文档规划。

周彤姣:

文件的保存和读取。

付饪:

技术支持。

(7)项目进度:

1-3夭:

前期准备,各类资料收集,流程图,算法等同时完成。

4-7夭:

实现基本功能和附加功能。

8・10X:

最后测试,最后优化。

(各类文档的设计与编写穿插『•始终)

二、技术路线

总体方案

游戏的简单流程如下图:

详细设计

a.实现玩家的类Player。

其中实现各个成员变量的set和get方法,以及构造和析构函数。

b.实现五子棋的类Gobango其中实现各个功能的函数如下:

1.开始游戏:

开始.下棋、悔棋、认输.保存voidstartGame();

显示帮助文档voidshowHelp();

4.>

i显示版权voidshowEdition();

6.显示棋盘voidshowChessBoard();

7.显示在线在帮助文档voidshowOnlineHelp();

8.显示菜单voidshowMenuf);

9.播放历史棋局voidmovieGoBang();

10.读取排行榜voidsetWinnerHome();

11.显示排行榜voidshowWinnerHome();

12.

12.・

13.修改排行榜voideditWinnerHome(Player&player);

14.保存历史记录、保存经典、继续intsaveHD(char*arr);

15.读取历史记录、读取经典、继续intloadHD(char*arr);

16.鼠标模拟monitor();agree(inta);

悔棋voidreper)t();

19.判断五子连线boolfun();

20.显示已保存文档、有经典文档和继续文档intshowSave(intchoice);

三、工程进度

本次作业历时十夭时间,总的说起來可以分为三个部分:

前期准备部分(第1-3天)

主要完成方案的讨论、资料的收集、流程图、算法等前期工作,编写报告中需求分析的一部分和总体方案的一部分及项目任务书。

•••

第1天:

选定题名,进行方案的讨论。

收集资料,写出需求分析中的开发背景部分。

第2-3X:

商定算法,将软件总体分块,写出项目任务书。

中期实现功能部分(第4-7天)

主要完成预先设想的基本功能和附加功能,完成项目文档中的技术路线和需求分析的剩余部分,完成调试报告中的单功能调适。

第4夭:

开始软件编写,完成棋盘的设计部分。

完成下棋部分程序的編写,测试棋盘设计部分。

完成悔棋部分程序的编写,测试下棋部分程序。

第5-6X:

完成两人对弈部分程序的编写,测试基本功能,测试悔棋部分。

第7夭:

完成附加功能,测试对弈部分情况。

完善各项功能,测试附加功能。

后期总结完善部分(第8・10天)

总体功能的调试改进,完成项目文档。

第8天:

功能调试,优化软件。

第9-10夭:

其它报告剩余部分。

四、测试报告

第4天:

测试棋谱

测试人:

程德武

测试内容:

通过VC++语言,我们编写了基丁-对话框的游戏界而。

我们将测试它的最基本面貌,希望其是符合我们要求的界面模式!

测试过程:

运行程序以后,弹出了棋局的对话框,整体棋局呈现白色,棋局右边和上边都有一些空出的区域,这是我们为将來实现其他附加功能预留的地方。

但是测试过程中我们始终发现一个问题,棋格的位图没有按照我们的设想正确放置,出现了跃出棋盘的怪现象!

问题解决:

通过反复推敲程序相关部分,我们觉得可能是算法有疏漏,丁•是修改了一下算法。

我们将每个棋格的位图封装了起來,将其位置作为成员数据。

再运行程序,问题就不再出现了。

反复运行程序再也没有出现异常情况!

第5天:

基本功能测试

测试人:

佟承雨

测试内容:

程序的基本框架己经编好了,希望能按我们的预期目标能实现供两人对弈功能!

测试过程:

将程序编译、链接、运行后,弹出棋局的对话框,然后开始下棋,我们一步一步观察了每步落子后棋局的变化过程,均与我们预期的变化过程一样,我们非常欣喜,这说明我们设计下棋程序时的算法准确无误!

第6天:

悔棋功能

测试人:

沈婷玉

测试内容:

测试悔棋功能能否正常实现。

测试过程:

我们测试了悔棋功能,反复的测试,此功能运行良好,能够一步一步悔棋,直到无子可悔,而II通过记录观察,每步的悔棋过程均准确无误!

第7天:

测试其他的附加功能

测试人:

李洪润

测试内容:

我们对排行榜,经典棋局回放功能进行了测试

测试过程:

我们开始游戏后,正常下棋取得胜利后,程序默认将胜方步数与排行榜中己存在的玩儿家步数进行比较,满足条件则进入排行榜,否则不进入。

如果是前五次玩的话默认都进入排行榜。

关于经典棋局,进入游戏后,载入经典棋局,每按一次回车,回放一步,经测试无异常。

第8・10天:

总体测试

测试人:

崔广浩

测试内容:

我们将在总体上对程序的运行效果和运行环境进行测试,以完善所有功能,达到软件的最优化!

测试过程:

首先我们测试了软件对运行环境的要求,我们先在Windowsxp操作系统中运行了一遍,结果并无异常情况出现;随后我们在CPU只有1GHz频率的硕件系统中运行,也并未发现任何问题!

我们基本上可以得出结论,我们的软件在一般的软、硬件环境下都能正常稳定地运行,对机子的配置基本没有什么要求,适合于广大的电脑拥有者使用!

五、个人小结

通过本次五子棋程序的设计,我想我学到了很多东西。

我主耍是负责大报告的设计和编写,同时也编写一部分程序。

编程的确是非常辛苦,主要是第一次利用VC++编写程序。

我的VC++学的不是很好,编程时遇到了很多的困难,好在我们班的崔光浩同学不辞辛苫的帮助我调试程序,我们参考了很多的资料,像我们《软件基础》大作业中的优秀作品,网上的有关VC++的一些实用的编程技巧,还有一些经典的算法。

善于利用已有的资源,是我在本次大作业中学到得很宝贵的经验,对于网络,我们懂得了不只要用它來实现低级的聊夭、看电影、打游戏等功能,我们还要实现获取有用的信息、学习别人先进的方法、查阅相关的电子资料等功能,充分发挥它的作用。

我们这次的作品,虽然只是一个比较简单游戏的实现,但是通过这次合作,我也有很大的收获。

虽然是一个小组,但每个人有不同的看问题的方法,我们在做这个软件的时候,大家也曾有过意见的分歧,我们也曾因为预期的功能没有实现而互相指责,也曾为有一点小小的进步而欣喜若狂。

一路风风雨雨,我们毕竞是基本完成了预期的功能,努力没有白费,心里特别的充实,这就是创造的快乐,也是合作的快乐。

我还编写了大作业的文档,由于口身能力的有限,我虽然竭尽全力,但总的感觉还是不能让我满意,不过,我也从中学到了一些东西:

总的说來,这次作业中我锻炼了口己的能力,也培养了团队合作的精神,感谢我

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 求职职场 > 面试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1