Greed问题模型报告.doc

上传人:仙人指路1688 文档编号:3883455 上传时间:2023-03-26 格式:DOC 页数:8 大小:42KB
返回 下载 相关 举报
Greed问题模型报告.doc_第1页
第1页 / 共8页
Greed问题模型报告.doc_第2页
第2页 / 共8页
Greed问题模型报告.doc_第3页
第3页 / 共8页
Greed问题模型报告.doc_第4页
第4页 / 共8页
Greed问题模型报告.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《Greed问题模型报告.doc》由会员分享,可在线阅读,更多相关《Greed问题模型报告.doc(8页珍藏版)》请在三一办公上搜索。

1、小组成员名单:015016:许正昌015017:侯飞飞015018:任乐015022:周学志015023:李俊生015030:叶跃庆015280:陈雷1:问题陈述Greed问题陈述编制一个在pc机上模拟Greed游戏的软件。本游戏使用6个立方体骰子,可供两个以上游戏者集体游玩。骰子的六面分别标有阿拉伯数字16的点数。游戏时若干个骰子同时集中掷下,依据所得到点数组合计算得分。其中计算分数要符合一定的游戏记分规则。游戏开始时可以选择游戏者的个数,然后游戏者依次获得一轮游戏机会,得分由各轮游戏的得分累计获得。每一轮开始时有六个骰子可以投掷。每掷一把后计算得分并将已得分的骰子取出,并且游戏者可以选择是

2、否再汇集其余的骰子掷下一把,这样逐次掷下去直至掷完剩余的骰子或选择放弃再掷。在入局后的每轮投掷中,若有一把未能得分,则本轮已得的全部积分作废且失去本轮游戏资格须待下一轮机会。若游戏者中间选择放弃再掷,则本轮所得分数加入到总分中。游戏开始时,掷一把得到300分或以上分既可入局(已得积分和未得分的骰子带入)。否则将失去本轮游戏资格须待下一轮机会。在每个游戏者得到相同轮数游戏的条件下首先获得3000分或获得3000分以上的最高分者为赢家。这个软件要在屏幕上显示一个表格,分别显示当前将要投掷骰子的游戏者和每个游戏者的当前的状态(是否入局,目前的总分,已经进行到第几轮),如果某个游戏者的得分超过3000

3、分则显示这个游戏者为赢家。静态系统交互图屏幕显示当前的状态和每个游戏者的分数用户选择游戏者个数系统骰子随机生成点数游戏规则用来计算某次投掷所得分数游戏者选择在某轮中是否再掷由问题陈述中抽取名词获得初步的对象初始化表软件,游戏,骰子,游戏者,点数,点数组合,分数,游戏记分规则,个数,游戏机会,轮,局,游戏资格,轮数,赢家,屏幕,表格,状态,总分扩展问题陈述Greed扩展问题陈述这个系统必须能够允许用户选择游戏者的个数,可以模拟骰子投掷得到随机的点数,可以对每个游戏者的得分进行计算,游戏者可以选择在每轮中是否继续投掷,系统可以在每个游戏者投掷后利用游戏记分规则对游戏者投掷所得的点数进行处理得到游戏

4、者应得的分数,然后可以在屏幕上利用表格的形式对当前的所有游戏者的状态(是否入局,进行到第几轮,在某轮中投掷了几把,目前的总分,本轮中已经得到的分数,是否已经超过3000分成为赢家)进行显示。经过筛选,可以得到2:对象类:游戏,游戏者,骰子,游戏机会,表格数据字典:游戏数据字典:整个软件运行时间内都有效,属性:一个表格,游戏者的数目重要的方法:从用户接收游戏者的数目,对游戏者进行初始化(进行第一轮投掷),对表格进行初始化轮到下一个游戏者进行动作关联:与游戏者间关联,与表格间关联,与游戏机会间关联作用:对整个的游戏进展进行管理,协调游戏者与表格显示之间的关系,启动游戏的进程判断如果某个游戏者的总分

5、超过3000则成为赢家游戏者数据字典:这个类的对象在游戏得到游戏者的数目后之后创建,直至程序运行结束属性:游戏者已经得到的总分游戏者是否入局的标志重要的方法:获得一次投掷机会关联与整个游戏间关联与游戏机会间关联作用:管理某个游戏者所得到的分数,与整个游戏之间的交互骰子数据字典:当进行某次游戏机会时,会构造一个骰子的对象,来模拟投掷骰子,当获得骰子的点数后,就会删除这个对象。属性:点数方法:投掷,会返回一个点数关联:与游戏机会相关联作用:模拟现实中投掷骰子的过程游戏机会数据字典:当轮到某个游戏者进行一轮游戏时,会构造游戏机会对象,当这一轮结束后,这个对象自动删除属性:游戏者还可以投掷的骰子的个数

6、游戏者在这一轮中暂时得到的分数方法:开始投一把,判断这个游戏者是否入局,如果否判断是否入局如果是,则请求用户判断是否继续投掷。用户选择继续投掷时则利用剩余的骰子继续模拟投掷用户选择放弃时,则把这一轮中已经得到的分数加到游戏者的总分中关联:与骰子对象关联,每次模拟都有构造骰子的对象来模拟与游戏者关联,作用:模拟某个游戏者在一轮游戏中的投掷骰子的行为,决定某个游戏者是否有资格进行游戏(是否曾投出300分以上)游戏者可以选择继续投掷或放弃再投每一轮的分数当游戏机会对象删除时要自动加到游戏者的总分中。表格数据字典:在整个游戏运行期间用来与用户进行交互属性:行列方法:在行中写数在列中写数作用:用来显示游

7、戏者的状态(已经获得多少分数,在第几轮中,本轮中已经得到的分数)游戏表格对象间的相互关系游戏者(多)骰子(多)游戏机会3:对象模型:游戏表格游戏者数目获取playernumInitgameInitFlexGrid下一个游戏者表格行列向行中写数向列中写数游戏者总分是否入局获取一次游戏机会游戏机会目前骰子的个数暂时得到的分数开始投一把继续投掷放弃投掷骰子点数投掷4:动态模型状态图游戏者 激活等待轮到这个游戏者动作(获得一次游戏机会)动作完毕游戏结束 游戏运行用户选择游戏者数目(轮到下一个游戏者,判断总分和显示)某个游戏者总分超过3000游戏机会判断返回开始游戏者未入局(判断是否入局)游戏者已入局继

8、续投掷等待决定继续放弃没有剩余骰子未得分计算返回把分数加到总分中骰子结束开始投掷返回表格运行得到新的数据游戏结束脚本开始游戏游戏从终端获得游戏者的数目游戏者依次获得游戏机会游戏者每次获得游戏机会时模拟投掷骰子,并计算得分并判断是否入局,如果是,请求游戏者决定是否继续如果否,判断是否超过300分决定是否入局如果游戏者选择继续,则继续模拟投掷骰子,并计算得分并判断是否继续当游戏者选择放弃或某次未得分或剩余骰子数为0时计算得分并退出。游戏判断游戏者得分是否超过3000分,如果是则成为赢家并结束游戏如果否则轮到下一个游戏者获得游戏机会事件流图终端表格 游戏游戏者游戏机会骰子 开始游戏输入游戏者数目 初始化表格 轮到游戏者动作 获得一次游戏机会投掷 返回点数,剩余骰子数 1点数为0返回 2点数不为0a未入局点数3001标志入局,加总分点数3002不标志入局,返回b已入局 1剩余骰子数为0将返回分数与总分相加,返回2剩余骰子数不为0请求选择是否继续1选择继续投掷返回点数,骰子数1点数为0返回2点数不为02选择放弃将返回分数与总分相加,返回 1总分超过3000分显示当前游戏者为赢家,结束游戏2总分未超过3000分 更新表格数据下一次游戏者动作

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号