2018软件工程2班 (福州大学至诚学院 - 计算机)

  1. 班级首页
  2. 作业列表
  3. 详情

第一次个人编程作业:我的分数我做主 [已截止]


本次作业需要提交的内容

  • 按要求在班级博客发布一篇随笔,使用 Markdown 语法进行编辑。
  • 按要求在码云上创建仓库,并提交源代码。

编程题目

上学期《Java程序高级开发》的成绩发布了,查了成绩,阿荣很郁闷,老师说是用云班课的经验值来评分,明明自己在经验值排行榜中的排名很不错,怎么才这点分数,打开云班课的作业列表,数着自己得到的经验值,越想越不服气。于是,阿荣决定“我的分数,我做主”,自己设计算法过把瘾。

编程要求

第一步:设计一下权重比例:

  • 阿荣考虑,老师辛苦了一学期,给老师留 10% 的话语权,剩下的 90%,我的分数,我来定

  • 课堂上的内容是基础分,权重大点,课堂完成部分占 30%、课堂小测占 20%

  • 课前自测是考查课前自主学习的情况,给 25% 的权重

  • 编程题和附加题是给大佬们拉高分用的,编程题占 10% 、附加题占 5%

第二步:经验值换算百分制成绩:

  • 经验值换算百分制基本算法应该是:个人获得的经验值总分 / 应得经验值总分 * 100
  • 不过,阿荣心思慎密,考虑到:
    • 自己课堂完成部分经常拿满分,应该打点折,按 95 折计算
    • 虽然大佬们编程题都能完成,但很难拿满分,应该做些调整,将经验值最高分的定为 95 分,然后去计算其他同学的得分
    • 附加题的难度就更大了,将经验值最高分的定为 90 分,然后去计算其他同学的得分

第三步:编程:

  • 方案搞定,手工计算不靠谱,阿荣觉得自己已经是软件工程专业大三的学生了,写个命令行的小工具吧
  • 很快,阿荣用Java语言写好了小工具,执行效果如下图所示:

img

阿荣看到结果相当自豪,老师手上的 10 分,怎么也得给我 6 分吧,那总分就应该是 94,完美。

编程说明

本次作业完成的命令行小工具,以 Java 为例,说明如下:

  • 包含主方法的类名:Score
  • 包名:Score 类不需要任何包名
  • 命令行工具有两个参数:如上所示的执行效果中
    • 第一个参数 small.html,是小班课上的“活动”页面下载到本地的文件名
    • 第二个参数 all.html,是大班课上的“活动”页面下载到本地的文件名
  • 输出格式:只输出分数,不需要其他任何文字说明
  • 配置文件:因为在“活动”页面,每项活动都只有自己已获得的经验值,没有该活动应得的经验值,所以请按以下格式,创建一个配置文件,提供各类经验值的总分,用于将经验值换算成百分制的成绩
    • 文件名:total.properties
    • 文件内容:
      • before=74
      • base=122
      • test=91
      • program=101
      • add=53
    • 其中:
      • before=74,表示课前自测部分的应得经验值总分是74
      • base=122,表示课堂完成部分的应得经验值总分是122
      • test=91,表示课堂小测部分的应得经验值总分是91
      • program=101,表示编程题的经验值最高分是101
      • add=53,表示附加题的经验值最高分是53。

源代码管理要求

  • 本次作业,要求使用Git进行源代码管理。

  • 建议使用 Git 命令进行源代码管理,暂不推荐使用 Git 图形应用程序,主要步骤参考如下:

    1. 在码云上创建远程仓库,取名:personal
    2. 加入 .gitignore 文件和开源 license
    3. 将远程仓库克隆到本地
    4. 本地 Commit
      • 至少 Commit 三次:请逐渐养成代码有进展即签入的好习惯
      • Commit 信息:请遵守一定的 Git 规范来书写 commit 信息
    5. 将完成的代码推送到远程仓库。

随笔要求

要求记录包括但不限于以下内容:

  1. 记录自己的代码行数,需求分析时间,编码时间

  2. 分解需求的思路,分解成多个模块,并阐述为什么这么分,优势在哪,可以附上代码片段,但代码片段必须控制在全文的三分之一以内,切忌字数不够代码凑

  3. 记录不会的知识的学习过程、记录修改优化的过程

  4. 请将完成作业中用到的资料网站,作为参考资料附在文后

  5. 自我发挥

  6. 为了方便其他学校的老师或者助教了解课程实况,请大家在作业开头添加格式描述:

博客班级 <填写这份作业所在的博客班级的链接>
作业要求 <填写这份作业要求的链接>
作业目标 <填写这份作业要达到哪些目标>
作业源代码 <填写这份作业源代码所在的码云仓库地址>
学号 <填写自己的学号>

代码如下:

| 博客班级   | <填写这份作业所在的博客班级的链接>     |
| ---------- | -------------------------------------- |
| 作业要求   | <填写这份作业要求的链接>               |
| 作业目标   | <填写这份作业要达到哪些目标>           |
| 作业源代码 | <填写这份作业源代码所在的码云仓库地址> |
| 学号       | <填写自己的学号>                       |

注意事项

  1. 可以弹性实现题目要求,无论是不完全实现,还是实现更多功能,但要求记录编码和学习过程
  2. 班级博客提交作业后,务必将作业链接提交到云班课对应的作业活动中
  3. 评分标准见云班课
  4. 在截止时间内提交作业的,增加作业提交及时度的奖励分 10 分:最后一天提交得 4 分,最后3小时提交不得分,其他得 10 分
  5. 对迟交作业:只允许作业截止时间后 2 天内补交,但得分减半
  6. 有问题请在群里直接问出,除非问题涉及隐私,不要私聊助教或老

学号 成员名 提交作业标题 提交日期 分数
提交: 63 人,未提交: 17 人
未提交名单: 周新宇    海皇丿汐    hexihexihexi    廖鸿志    瓜脐    专业团队`    第四小组    诸葛亮(三人组)    七魔仙_堡    您为何会咸鱼    Theseven    代码敲不队orz    007团队    e至诚    差不多得了    摸鱼小分队    卢志伟