码迷,mamicode.com
首页 > 其他好文 > 详细

结对编程作业

时间:2016-04-08 19:59:39      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:

一、题目及其要求

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

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

    现在请大家根据这个游戏规则,编一个可以多人一起玩的小游戏程序,要求如下:

   1、本作业属于结对编程项目,必须由二人共同完成,并分别将本次作业过程发到博客,同时将本次作业源代码提交到codeing系统;

   2、如果可能的话尽量以C/S或B/S方式实现,即利用服务器接收和处理所有玩家提交的数字,并将结果反馈给各玩家,玩家可以通过客户端提交的数字;

   3、如果采用单机方式实现的话,需要为用户提供便利的输入界面;

   4、该游戏每次至少可以运行10轮以上,并能够保留各轮比赛结果。

二、功能介绍

   程序通过for循环嵌套实现玩家的信息输入,用数组S存储玩家输入的数字,然后将存入的数字进行求平均数的运算,然后乘以0.618得到G值,之后运用函数abs()进行将玩家的数字与G值求绝对值然后用数组S2和S3来实现对本轮分数以及总分数的存储,之后将其输出。

  中间的for循环通过循环控制变量i和j来实现对游戏进行的轮数以及一轮游戏参加的人数的控制,此循环运行过后就可以实现计算出一轮玩家的数字的和之后求平均值进而求出G值。

  之后的求绝对值运算是为了实现对每位玩家分数的评判,从而也对每一轮的游戏成绩进行保存以及输出每一轮的成绩,同时将进行到本轮为止的所有成绩之和进行显示。

三、运行过程

下图为进入游戏的截图:

技术分享

下图为进行第一轮输入:

技术分享

下图为第一轮游戏的输出:

技术分享

下图为接着进行下一轮的输入:

技术分享

第二轮的输出,此时可以显示运行两轮之后的总分数以及本轮分数:

技术分享

.........

直到结束。

四、结对编程体会

  每个人在各自独立设计、实现软件的过程中,都不免会犯这样那样的错误。在结对编程的过程中,我和我的队友进行了很多的讨论,在随时的复审和交流中,难免会有意见不合的时候,但是我们进行了商讨之后最终还是选择了最有效的方法来解决。因此在这样的一次结对编程中,我们的错误就不像之前独自一人完成的时候那么容易犯错误,程序的初始质量很明显提高了很多,省下了很多的以后的修改过程。

  综合来想,终于明白了老师安排结对编程的目的,效果已经初现。

五、对队友的评价

  我的队友数我们班为数不多的一位女生,本来不是特别了解。经过两周的结对编程发现对方是一个很认真的人,在结对编程的过程中给了我很多的帮助,在互相的监督学习中,对队友也有了新的认识。

  也在这次结对编程中认识到,一个好的团队必须是一个团结的、善于交流的团队,因为个人的能力是有限的,不同的人之间的相互合作以及沟通可以让我们每个人扬长避短,更好地发挥自己的优势。

   最后附上和队友的图片:

  技术分享

  • 我的coding地址:https://coding.net/u/2013040101034

结对编程作业

标签:

原文地址:http://www.cnblogs.com/zw2013040101034/p/5369351.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!