zoukankan      html  css  js  c++  java
  • 结对编程项目-四则运算 挑战出题

    20162325金立清 结对编程项目-四则运算 挑战出题

    目录

    一、需求分析

    • 通过命令行参数形式指定题目要求
    • 题目去重

    返回目录

    二、设计思路

    本周任务是给题目去重,方法是每生成一个题目,判断结果,将结果放入list中,接下来的题目答案如果与列表中的元素有相同,就重新生成题目。

    UML类图

    返回目录

    三、实现过程中的关键代码解释

    • 去重代码
     for (int i=0;i<count;i++) {
                expr = mq.getExper(level);
                result = calculator.evaluate(nts.conversion(expr));
                if(list.indexOf(result)>= 0) {
                    i--;
                }else {
                    list.add(result);
                    iof.WriteQuestionsToFile(expr + "
    ");
                }
    }
    

    ListindexOf方法,返回此列表中第一次出现的指定元素的索引;如果此列表不包含该元素,则返回 -1。如果返回值大于等于0,说明重复,那么i自减一,继续循环;如果返回值小于0,没有重复,那么把结果加入列表,再把题目写入文件。

    返回目录

    四、测试方法

    前四个测试还能进行,到10000题就崩溃了。

    • 去重




    • 无去重






    返回目录

    五、运行过程截图

    1. 在IDEA中运行,先设置参数

    2. 然后运行程序

    3. 运行成功后,会生成相应的txt文件

    4. 打开后可以看到题目

    5. 在命令行下编译运行

    javac -d bin src/*.java
    cd bin
    java ExpressionGenerator <number-of-expressions> <number-of-operator> <output-file-path>
    

    返回目录

    六、代码托管地址

    返回目录

    七、遇到的困难及解决方法

    八、对结对的小伙伴的评价

    一开始试着思考如何去重题目,但半天毫无头绪,最终还是由搭档完成编码,再把思路讲解给我听,我则负责把之前的代码复制过来进行修改,如把可执行的入口类改名为ExpressionGenerator等,还向搭档学习了页内Markdown格式。

    • 打分:70分
    • 依据:代码主要是搭档写的

    返回目录

    九、PSP

    PSP2.1 Personal Software Process Stages 预估耗时(小时) 实际耗时(小时)
    Planning 计划
    · Estimate · 估计这个任务需要多少时间 0.5 0.5
    Development 开发
    · Analysis · 需求分析 (包括学习新技术) 2 4
    · Design Spec · 生成设计文档 1.5 1
    · Design Review · 设计复审 (和同事审核设计文档) 1 1
    · Coding Standard · 代码规范 (为目前的开发制定合适的规范) 0.5 1
    · Design · 具体设计 2 3
    · Coding · 具体编码 2 4
    · Code Review · 代码复审 1 2
    · Test · 测试(自我测试,修改代码,提交修改) 1 1.5
    Reporting 报告
    · Test Report · 测试报告 1 1
    · Size Measurement · 计算工作量 0.5 0.5
    · Postmortem & Process Improvement Plan · 事后总结, 并提出过程改进计划 0.5 0.5
    合计 13.5 20

    返回目录

  • 相关阅读:
    DDD 领域驱动设计-谈谈 Repository、IUnitOfWork 和 IDbContext 的实践
    UVA10071 Back to High School Physics
    UVA10071 Back to High School Physics
    UVA10055 Hashmat the Brave Warrior
    UVA10055 Hashmat the Brave Warrior
    UVA458 The Decoder
    UVA458 The Decoder
    HDU2054 A == B ?
    HDU2054 A == B ?
    POJ3414 Pots
  • 原文地址:https://www.cnblogs.com/JXY6996/p/6942103.html
Copyright © 2011-2022 走看看