二人项目总结

  近日我和同学练习结对编程试着做了一下二人项目,练习的过程中虽有不少收获也发现了一些平时难以发现的问题。比如,不同的编程人员有不同的编程习惯,就拿计数变量来说,我会选择相同的终结条件匹配相同的控制变量,而我的队友喜欢每次循环都使用新的控制变量。他是个慢性子,编程的时候并不着急,总是想一点写一点,在这个方面我更习惯预先做好整体构思,在确定大体框架后再一点点填充。从代码精简性讲,在寻找最大、最小值时,他用了两次循环分别求值,而我用了一个循环,在不对数组数据进行操作而只是比较的话,是可以在一次循环中同时求取最大最小值的。从代码规范上来说还是比较规范的。

  个人感受,此次练习依旧延续了我先构思在编程的风格,事先在分析上,考虑到局数和人数就设置了一个二维数组,以行标表示第几局游戏,以列标表示人数,在二维数组中存入数据即每人输的数值。另设一个数组存分,每局游戏中都输出黄金点值和当前得分,游戏结束时输出最终得分,同时将其存入文件。整个编程过程一气呵成,初次运行也没有任何问题,所需功能基本实现,后来数据测试时发现的了一个问题,输出的得分个数与人数并不匹配,查看了一下程序才发现,该得分个数恰好与游戏局数一致,竟是将输出控制条件弄错了,本来应该与人数一致,大意了。可能是平时编写的程序短,所以对整体把握清晰一些,这次写的较往常大了一点,忙中出错。由于采用的是C语言编程就没有做界面,打算学一下java在之后的团队项目中再做界面。虽然到目前为止也没有突出的编程量,但是每次编程还是比较顺利的,偶尔遇到点问题也都平稳的解决了,而且随着编程量的提升,也渐渐适应了这种节奏,不再像当初那样茫然无措。坦白的讲,初进这个专业时并没有太大兴趣。也不太理解计算机科学与技术的含义,大多时候更是把它当成一门理论科学来学,基本忽略了“技术”这个词儿。现在想想这门课的实践性还是很强的,只学习理论而不去实践只能是纸上谈兵而已,不亲手去做好多问题根本发现不了。亡羊补牢,为时未晚。好在现在还来得及,以后自当勤加练习。

  对于游戏中的输入数值有减小的趋势这一现象我也试着推测了一下,在理想情况下做个假设,大家输入的数据肯定是离散的,如果这个离散比较均匀,那么平均值就和该组数据的中间值(数据从小到大排列)很接近,黄金点在平均值基础上乘0.618,约在前一半数据的中上部,即整组数据的30%左右(数据从小到达排列),如此一来大家就会发现胜者的数据往往比较小,自然而然在新一轮游戏开始时都会适当减小自己的数据。另附工作照一张:

 

posted @ 2016-04-08 14:50  落雨止青  阅读(156)  评论(0编辑  收藏  举报