首页 > 代码库 > 结对编程:黄金点小游戏
结对编程:黄金点小游戏
一.游戏要求
黄金点游戏是一个数字小游戏,其游戏规则是:
N个同学(N通常大于10),每人写一个0-100之间的有理数 (不包括0或100),交给裁判,裁判算出所有数字的平均值,然后乘以0.618(所谓黄金分割常数),得到G值。提交的数字最靠近G(取绝对值)的同学得到N分,离G最远的同学得到-2分,其他同学得0分。玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动。
现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下:
1、本作业属于结对编程项目,必须由二人共同完成,并分别将本次作业过程发到博客,同时将本次作业源代码提交到coding系统;
2、如果可能的话尽量以C/S或B/S方式实现,即利用服务器接收和处理所有玩家提交的数字,并将结果反馈给各玩家,玩家可以通过客户端提交数字;
3、如果采用单机方式实现的话,需要为用户提供便利的输入界面;
4、该游戏每次至少可以运行10轮以上,并能够保留各轮比赛结果。
二.算法分析
1.确定游戏界面,美观
2.确定游戏轮数,玩家人数
3.确定算法,计算每轮的平均值及黄金点数,以及相应的比较功能
4.输出每轮的游戏结果,显示分数和赢家输家
三.结对编程
1.和我一起组队的是高振超 他的博客链接:http://www.cnblogs.com/Amethy1st/
2.结对编程时,两个人一起编程,用一台电脑,同时进行。编代码时有些我疏忽的地方,他都会提醒的到,并且发现一些需要加强和补充的地方,为人耐心仔细,让编程的过程更有效率,避免一些时间上的浪费。
3.编程时,我负责游戏结构的梳理和主程序的编写,队友负责游戏内容算法的完善和调试,两个人齐心协力,共同完成了这一个小编程。我编程时思路比较快,代码的规范并不是很好,比较强调效率,而对方比较耐心,对代码的复审和完善比较重视,两个人互相补充,逐渐完善了代码。
4.当我真正完成了整个代码的时候,我才真正体会到了老师让我结对编程的意义,一个人编代码的过程,可能一起喝成,思路比较快,但相比较于结对编程,两个人一起探讨,一起编代码,还是有一些不同,结对可以让两个人取长补短,代码的思路和内容也可以根据两个人不断完善,相对于一个人它是片面的,可能有些考虑不到的地方,对方就很容易的想到了,我在编代码时这一点深有体会。在结对的过程中,可能我们两个人会有意见上的争执,谁都不服谁,觉得自己的好一些,但经过两个人分别的解释时,通过筛选,可以选择出最适合我们的算法,算法的效率也得到了提高。
5.结对编程的过程中,我深有体会这个社会是需要合作共赢的,不管是现在的学习生活还是未来的工作中,避免不了和他人的合作,合作中方也许会有不愉快的事情发生,但只要两个人心齐,向上不断进取,结果都会往好的方向发展,让我们不断的完善。
结对编程的照片如下~
四.游戏效果实现
输入游戏轮数
输入玩家人数
输入玩家输入内容
输出赢家输家是谁
公布此轮答案
五.总结
此次的结对编程,让我第一感受到了两个共用一台电脑,一个键盘,一个鼠标共同合作的体会,编程的过程中,不再是一个人的纠结,换成两个人共同的商议,过程少了一些枯燥无味,而是更有动力去完成我们此次的小游戏编程,老师的良苦用心我们已经体会!希望还会有更多的机会和大家一起合作!
代码coding链接:https://coding.net/u/gygy9610/p/jiedui-goldgame/git/tree/master
结对编程:黄金点小游戏