一、项目描述:黄金点游戏

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

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、项目源代码,以二人名义提交至coding系统中;
   2、本次过程总结,每人独立完成,内容应至少包括如下部分:
       (1) 首先,介绍自己的结对人员,并留下队员的博客链接(以便于老师对照看你们的作业吧),两人工作中的照片,要看到脸,并且要专注工作;
       (2) 对方性格、工作态度评价;
       (3) 俩人各自所做工作?对方编程习惯总结(是否遵照代码规范、是否关注算法效率、是否做了代码复审、界面设计是否关注美观实用等等);
       (4) 本次编程过程的体会和总结,要有感情,切忌官话套话……

三、 结对管理

团队成员:张明智、李云龙

时间: 7天期限;

目标: 团队化管理,结对编程,共同进步。

项目预期:

第一阶段: 游戏先行版

描述: 网页版游戏,实现基本功能。

第二阶段: 游戏改进版

描述:  网站版游戏,网站(多个页面,服务器(后台处理),数据库)。

第三阶段: 持续更新版游戏

描述:  更新版(支持移动端和pc端并且持续更新的游戏)。

  项目安排:

一共5天时间做完本次项目,至少先出先行版,后续跟进。

时间紧迫,效率为上。2天设计与材料准备;1天编码,2天测试和准备博客。

四、项目设计和分析

1、 分析:

一款游戏,游戏规则为黄金值(平均值*黄金数);

要有游戏介绍;

最少人数为10人,要有增加人数和删除人数;

得分为每轮计分,每轮结束自动清除;

最后黄金值输出。

 2、建立思维导图:

链接:https://www.processon.com/mind/57fb9e94e4b03429bdfafbf3

先行版:

网页形式,必要的网页美化+基本功能;

要求:

页面简洁,布局合理,用户体验要好。

3   材料(工具)准备:

网页编写工具:webstorm

浏览器:IE  chrome Firefox  等

环境:   windows  系列

4 分工 :

一起设计分析;

张明智负责编写代码,李云龙负责指导和规范代码;

共同参与测试。

五、 编码

1    html5+css3的页面

简洁的页面。

 2    必要的动画效果

动态添加删除输入的文本框,结果显示简洁。

六、 测试与发布

1 测试:

根据设计,页面分为3部分,左边为游戏规则介绍(项目介绍,用户可以编辑);中间为操作区域(输入数据),用户可以选择输出结果和增加游戏人数;右边为输出结果显示区域。

1.1 功能测试:

输入测试

采用7点测试法。

根据需求,输入数据在0~100之间的有理数(本项目认为0与00可以在内更合理),所以输入其他字符不能有效,并且数字在0~100.

结果见下表:

2 发布:  

代码提交到coding.net,博客发布。

 七   提交材料

   1 coding链接:

html:    https://coding.net/u/SchopenhauerZhang/p/softwareEnjeering/git/blob/prcticestwo/WebContent/main.html

   2   队友(队友链接:http://www.cnblogs.com/Myosotis/)

我的队友是李云龙(团长),他是我的偶像,我一直喜欢他的电视剧《亮剑》。他跟电视剧中的任务不一样,他很细腻,他很博学,在结对编程中他很细心的帮我指出我代码的问题(尤其是代码格式和规范)。见下图:

左起李云龙,张明智

3  合作中的问题

由于性格不一样,我们之间会有争吵,甚至发生肢体接触,但是每次我们都能愉快的解决(打不过)。很荣幸我们能在一组。

在代码编写过程中,我们遇到很多问题,首先是编程软件,各自习惯都不一样;其次就是代码的格式,我们对于{}换不换行争议了很久,对于有强迫症的他,我只能选择屈服,然后等他走了我再改回来(我也有强迫症)。

4 总结

编程中,我们都习惯一个人编程,不喜欢交流,但是由于都看不惯,所以就是争吵。但是争吵就是交流的起步,慢慢的,我们开始交流,不要吵,吵解决不了问题,对不对?@团长

大家一起编程,一起进步。他会指出我编码时的代码规范,我会提示算法的效率和程序的维护。最后,由于时间紧我们没有完成后续的改进版和更新版。但是编程我们一直在路上。加油!

Gold Game的更多相关文章

  1. Baskets of Gold Coins_暴力

    Problem Description You are given N baskets of gold coins. The baskets are numbered from 1 to N. In ...

  2. [UCSD白板题] Take as Much Gold as Possible

    Problem Introduction This problem is about implementing an algorithm for the knapsack without repeti ...

  3. XidianOJ 1120 Gold of Orz Pandas

    题目描述 Orz Panda is addicted to one RPG game. To make his character stronger, he have to fulfil tasks ...

  4. POJ 3274 Gold Balanced Lineup

    Gold Balanced Lineup Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 10924 Accepted: 3244 ...

  5. 哈希-Gold Balanced Lineup 分类: POJ 哈希 2015-08-07 09:04 2人阅读 评论(0) 收藏

    Gold Balanced Lineup Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 13215 Accepted: 3873 ...

  6. Gold Coins 分类: POJ 2015-06-10 15:04 16人阅读 评论(0) 收藏

    Gold Coins Time Limit: 1000MS   Memory Limit: 30000K Total Submissions: 21767   Accepted: 13641 Desc ...

  7. 2012 #5 Gold miner

    Gold miner Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  8. Pots of gold game:看谁拿的钱多

    问题描述: Pots of gold game: Two players A & B. There are pots of gold arranged in a line, each cont ...

  9. [LOJ 1030] Discovering Gold

    B - Discovering Gold Time Limit:2000MS     Memory Limit:32768KB     64bit IO Format:%lld & %llu ...

  10. OpenJudge/Poj 2000 Gold Coins

    1.链接地址: http://bailian.openjudge.cn/practice/2000 http://poj.org/problem?id=2000 2.题目: 总Time Limit: ...

随机推荐

  1. 在 CentOS 7.x / Fedora 21 上面体验 PHP 7.0

    编译自:http://linoxide.com/linux-how-to/install-php-7-centos-7-fedora-21/作者: Aun Raza原创:LCTT https://li ...

  2. dapper 学习

    上一篇, 提到Query<Test>查询的时候, 如果Test中包含自定义class, Dapper不会给自定义class完成映射, 而是直接给null, 其实是可以实现的, 答案就在下面 ...

  3. RestfulApi地址命名特点

    get /orders 全部get /orders/{id} 根据id查找get /orders/{number} 根据编号查找get /orders/name/{name} 根据名称查找post / ...

  4. SSH(Struts,Spring,Hibernate)和SSM(SpringMVC,Spring,MyBatis)之间区别

    http://m.blog.csdn.net/article/details?id=52795914#0-qzone-1-52202-d020d2d2a4e8d1a374a433f596ad1440

  5. 用unity4.3发布WINDOWS STORE APP应用的方法

    http://www.cnblogs.com/suxsho/ 原创,转载请声明 ============================================================ ...

  6. codeforces 733D

    明白了自己这么菜的原因多半是赛后不肯去补那些需要多花点时间思考的题目以及效率不高,但愿现在还不算晚... #include<bits/stdc++.h> #include<iostr ...

  7. [Thinking in Java]这些必须先了解

    2.基本概念和认识 2.1 Java引用 Java中一切皆是对象,一切对象实例的标识符号(对象名称)都只是对象的引用. 2.2 对象的创建 通过new关键字创建,但是要注意基础类型和String类型的 ...

  8. SQL 用户定义表类型,在存储过程里使用表类型,表参数作参数

    .定义表类型SUTDENTTYPE,包含三个字段,分别对应学生表的NAME,SEX和PHONE.之所以如此创建,我是准备在插入新学生数据的存储过程中,以它为参数.   GO CREATE TYPE S ...

  9. 【转】nginx中的ngx_cdecl

    http://blog.csdn.net/midion9/article/details/50605337 看nginx的代码时,发现有些函数返回值之后,还有一个ngx_cdecl关键字,如:   1 ...

  10. table中bordercolor属性设置后最新ie浏览器或firefox中不显示边线,借助table的css来实现边线

    table中的bordercolor属性设置后在最新的ie或者firefox中均不显示边线,table的边线又是常用功能.只能使用css来实现了,更通用,更方便一些. css: ​.ctable{ b ...