黄金点游戏

黄金点游戏描述:

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轮以上,并能够保留各轮比赛结果。

过程

这次和我合作的还是老搭档黄珂锐了,在最开始交流的阶段,搭档就给出了她的大体想法和思路,对于目前所学的知识(除了C和C++懂得一点之外,Web也是刚刚入手),我们俩很难在短时间内以C/S或B/S的方式实现,就选择了在网页上的单机方式实现,日后再慢慢改善。搭档的最初游戏框架是

  搭档的大局思路还是挺清晰的,后来再根据我们自己的实际能力和情况对布局进行的修改,删繁就简简单的,弄了个简单的界面,

         

  后来搭档觉得太单一简陋了,还是对CSS样式进行了修改,使得界面更加美观一点,女生的审美还是比男孩子强一点。

       

  界面出来了,还得编写与按钮相响应的JS文件,在此,我们的思路是先把每一局所有玩家要输入的数字全部输入进去,然后对每一轮的各位玩家的分数进行标记,最好再统计得分,决胜出最终的赢家和输家,然后就进行了工程的重头戏部分,进行编程了。在这过程中没有老司机和乘客(即领航者之说),两人水平差不多,哪个累了就上去动手编程,另外一位就在边上看着,看是否符合基本的代码编程规范。在这次的合作过程中,页面的美化和设计过程由搭档完成,我就专注于算法的修改和改进,在最初的一个程序中,若是两个人的数字一样,我们只能将分数统计到一位玩家的身上,就出现了一点小瑕疵,后来,对记录分数的思路稍微进行了改进。下面附上一张我俩编程时的图片。

      

   游戏过程和结果部分展示部分截图如下面几张图片所示;

          

          

      

总结

  在这次的结对编程中,最终还是没有完成搭档最初的设想,一起做出能够与服务器连接,放在浏览器上供大家体验游戏,理想总是很美好,现实却是很骨感(大三了,按部就班地跟着老师上课。。。。。)。但在这次的作业中,也体会到了“1+1>2”的真谛,两人一起共同努力,完成了一小部分,在后期的学习中,再慢慢地提升自己的能力,对这次的小游戏进行不断地完善。UE,Up Everyday,无论处于什么的情境,还是想办法每天让自己充实,让自己每天都能有所收获,有所进步。我们的征途是星辰大海。。。

本人Coding.net:https://coding.net/u/hmshms

搭档Coding.net:https://git.coding.net/lttra/3-softwarehomework-GoldGame.git

结对编程--Goldpoint Game的更多相关文章

  1. 结对编程--基于android平台的黄金点游戏

    游戏内容: 阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫“黄金点”的游戏: N个同学(N通常大于10),每人写一个0~100之间的有理数 (不包括0或1 ...

  2. 结对编程-地铁续(有种上个学期OO的既视感)

    我们组比较特殊..三人结对 github:https://github.com/qingchanghan/WPFUI_Metro po一张照片: 石浩然,韩青长.陈彦吉 (台式机真的很高端,分屏贼帅) ...

  3. 结对编程项目——四则运算vs版

    结对编程项目--四则运算vs版 1)小伙伴信息:        学号:130201238 赵莹        博客地址:点我进入 小伙伴的博客 2)实现的功能: 实现带有用户界面的四则运算:将原只能在 ...

  4. 关于软件工程结对编程作业 PairProject : Elevator Scheduler(电梯调度算法的实现与测试)的总结

    1)结对编程队友 1106xxxx 张扬 1106xxxx 杨军 其中,此项目的编程实现主要由前者完成. 2)关于结对编程 结对编程的优点: 最直接的一点:在结对编程中,由于有另一个人在你身边和你配合 ...

  5. 结对编程—黄金点游戏WinForm单机版

    本小游戏场景来自邹欣老师的<移山之道>一书: "阿超的课都是下午两点钟,这时班上不少的同学都昏昏欲睡,为了让大家兴奋起来,阿超让同学玩一个叫"黄金点"的游戏: ...

  6. Week4 结对编程

    1.照片 1.1  结对编程参与者:李文涛.黎柏文 1.2  展示照片 2.结对编程的优点&缺点 2.1 优点 2.1.1.两人分工合作,减少了工作量 2.1.2.结对编程的伙伴往往能提供不同 ...

  7. 结对编程——关于Fault、Error、Failure程序设计

    一.问题描述:         构造程序,分别是:         •不能触发Fault         •触发Fault,但是不能触发Error         •触发Error,但是不能产生Fai ...

  8. GUI、模块化与结对编程(homework-03)

    摘要: 在本次作业博客里,我将主要阐述作业3的收获.作业3表面是将之前的程序转换为图形界面(之前程序见http://www.cnblogs.com/shone/p/3348372.html),然而本质 ...

  9. BJDP结对编程活动

    7月21日参与了 BJDP北京的活动 在北京首次参与能够参与动手编程活动,感觉挺不错的. 本次活动共有三项内容 1.      金锐分享单元测试的Mocking技术,20 mins 2.      伍 ...

随机推荐

  1. php事件驱动

    1. [文件] class.Dispatcher.php ~ 967B     下载(9) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 2 ...

  2. Spring Boot 系列教程17-Cache-缓存

    缓存 缓存就是数据交换的缓冲区(称作Cache),当某一硬件要读取数据时,会首先从缓存中查找需要的数据,如果找到了则直接执行,找不到的话则从内存中找.由于缓存的运行速度比内存快得多,故缓存的作用就是帮 ...

  3. shell 各种循环判断

    shell支持的循环有 Shell if else Shell case esac Shell for循环 Shell while循环 Shell until循环

  4. mysql中的substr()函数

    mysql中的substr()函数和hibernate的substr()参数都一样,就是含义有所不同. 用法: substr(string string,num start,num length); ...

  5. windows程序设计(三)

    MFC所有封装类一共200多个,但在MFC的内部技术不只是简单的封装 MFC的内部总共有六大关键技术,架构起了整个MFC的开发平台 一.MFC的六大关键技术包括: a).MFC程序的初始化过程 b). ...

  6. Ubuntu下安装Node.js

    下载Linux Binaries (.tar.gz)二进制包 解压 重命名为node 移动到/usr/local/目录下 创建软连接 ln -s /usr/local/node/bin/node   ...

  7. 转:WebDriver(Selenium2) 判断页面是否刷新的方法

    public static boolean waitPageRefresh(WebElement trigger) { int refreshTime = 0; boolean isRefresh = ...

  8. 使用过滤器(Filter)解决请求参数中文乱码问题(复杂方式)

    前述:      在写这篇笔记之前,对笔记中的设计模式进行介绍:      本篇笔记中将要使用到的设计模式是:装饰(包装)设计模式           (1)装饰(包装)设计模式口诀:         ...

  9. 仿360新闻的热搜图片,win8风格随机九宫格布局

    360新闻地址:http://sh.qihoo.com/i/ 感觉这效果挺好的,随机九宫格,在不少地方可以用到,就研究了下他的源码,基本原理就是预先定义好几种布局模块,然后根据需要进行拼接,具体代码可 ...

  10. PHP个人常用函数封装

    function GetIP(){ if(!empty($_SERVER["HTTP_CLIENT_IP"])){ $cip = $_SERVER["HTTP_CLIEN ...