结对编程作业

本文介绍了一个由两位程序员合作开发的单机黄金点数小游戏。游戏规则简单,通过计算平均值并应用黄金分割常数,判断玩家提交的数字与理想值的接近程度,以此决定分数。文章详细阐述了程序设计思路、关键函数实现以及个人编程体验,展示了从设计、调试到运行的全过程。虽然目前仅支持单机模式,但作者表达了对后续功能开发的期待。

 

结对人员:何宇峰,马婧婧。

小伙伴的友情链接:http://www.cnblogs.com/majingjing/

程序也已经上传到Coding,直达地址:https://coding.net/u/qaw01213/p/jieduibiancheng/git

 

这次结对编了个单机的黄金点数小游戏,因为电梯调度系统对于我们这种编程基础一般的人来说感觉是难了点,所以决定量力而行,先把简单的做了,再考虑难的。

黄金点游戏

      黄金点游戏是一个数字小游戏,其游戏规则是:

      N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。

 

 首先游戏程序分析:

           个人觉得这个程序的设计还是比较简单的,思路也比较清晰,第一步先确定玩家们想进行游戏的轮数,然后在决定进行游戏的玩家人数,接着就可以开始游戏了。一轮游戏结束之后会立即显示各位玩家当前所获得的分数,并提示玩家们进行下一轮的游戏输入。

程序设计:

         首先定义一个两个指针数组,一个用来记录每个同学输入数字并且在算出黄金点后暂时记录差值,另一个用来记录每个同学的当前总分数。

         然后设计一个函数int compute()来计算当轮游戏的黄金点数,把该黄金点数传入函数void compare()中进行与每位玩家所输入的数值比较,找出离黄金点最近的玩家,给该玩家加上等于玩家人数的分数,同时找出离黄金点最远的玩家,并将该玩家的分数减2,其余玩家分数不变。

         最后通过一个函数void consequence()来打印输出当轮游戏过后每位玩家的当前总分数。

编程体会:

         最初在写完程序时,连编译都通不过,提示了一大堆的错误,这个时候心里是比较崩溃的。最后通过错误提示挨个检查,并通过百度查找一些看不太懂的错误解决办法,终于让程序可以运行起来。这时候有点舒爽了。在程序初步运行时,还有很多不合理的地方,出现了很多BUG,比如黄金点数计算不对,所有玩家得分数一直为0,这时候又有点懵了,,不过之后通过一步步的调试程序在子函数中检查出了问题,加以修改,总算程序能正确的运行了,这时候心情有点小舒畅了。不过目前还只支持单机模式,联网模式还有待开发。最后要说的是电梯调度系统程序也在编,但是还没有成功,如果成功编出来的话就会放出来的。惆怅的“呼”……

转载于:https://www.cnblogs.com/hyf3/p/5372185.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值