第三次作业
黄金点游戏是一个数字小游戏,其游戏规则是:
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轮以上,并能够保留各轮比赛结果。
5、作业总结中,驾驶员主要描述本次结对编程中领航者对代码复审做了哪些工作,提出了哪些有建设性的意见和建议。领航者对驾驶员本次工作进行总结,主要包括代码风格、编程技巧等,两人应共同总结与一人编程相比,结对编程是否真正提高了代码质量和编程效率,双方应该将本次工作过程拍若干张照片并发布到博客中。
结对编程—黄金点游戏:
一.角色分配:
领航员:孙悦
驾驶员:曹瑞(我)
二.黄金点游戏代码上传至coding.net网址:https://coding.net/u/caoruicry/p/clearlove1/git/edit/master/README.md
三.结对编程的感想和总结:
这是我第一次结对编程,我和孙悦先一起进行对该题目的分析,通过详细讨论明确该游戏要实现的功能和编程的具体大思路。然后开始写代码,本来我俩是写了几个分函数调用,出现错误且比较麻烦,我俩重新进行探讨后确定只写一个主函数用c语言和c++完成。在我写的过程中,孙悦对我写的代码进行监督检查,会在我出现错误时马上提醒我,会让我注意代码格式的规范性,提高了代码质量。在我思路不清晰出现卡壳时,我俩就会交流探讨,融合两个人的思路,相比一个人编程,节约了很多时间。完成后一起进行调试bug,修改细节问题,对输出页面的进行排版布局使之更加美观,共同完成此次的结对编程。
此次结对编程让我俩增加了交流,必须不停的对一个问题进行探讨,才能写代码,也减少了一些不必要的失误,比如写错字母,忘记定义等等。两个人可以相互交流一下经验,使两人的能力都得到提高。相比独自一个人编程,节约了编程时间,提高编程的效率和质量,增强我们的合作意识,互相学习。
四.结对编程照片
黄金点游戏是一个数字小游戏,其游戏规则是:
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轮以上,并能够保留各轮比赛结果。
5、作业总结中,驾驶员主要描述本次结对编程中领航者对代码复审做了哪些工作,提出了哪些有建设性的意见和建议。领航者对驾驶员本次工作进行总结,主要包括代码风格、编程技巧等,两人应共同总结与一人编程相比,结对编程是否真正提高了代码质量和编程效率,双方应该将本次工作过程拍若干张照片并发布到博客中。
结对编程—黄金点游戏:
一.角色分配:
领航员:孙悦
驾驶员:曹瑞(我)
二.黄金点游戏代码上传至coding.net网址:https://coding.net/u/caoruicry/p/clearlove1/git/edit/master/README.md
三.结对编程的感想和总结:
这是我第一次结对编程,我和孙悦先一起进行对该题目的分析,通过详细讨论明确该游戏要实现的功能和编程的具体大思路。然后开始写代码,本来我俩是写了几个分函数调用,出现错误且比较麻烦,我俩重新进行探讨后确定只写一个主函数用c语言和c++完成。在我写的过程中,孙悦对我写的代码进行监督检查,会在我出现错误时马上提醒我,会让我注意代码格式的规范性,提高了代码质量。在我思路不清晰出现卡壳时,我俩就会交流探讨,融合两个人的思路,相比一个人编程,节约了很多时间。完成后一起进行调试bug,修改细节问题,对输出页面的进行排版布局使之更加美观,共同完成此次的结对编程。
此次结对编程让我俩增加了交流,必须不停的对一个问题进行探讨,才能写代码,也减少了一些不必要的失误,比如写错字母,忘记定义等等。两个人可以相互交流一下经验,使两人的能力都得到提高。相比独自一个人编程,节约了编程时间,提高编程的效率和质量,增强我们的合作意识,互相学习。
四.结对编程照片