zoukankan      html  css  js  c++  java
  • 20172307 / 20172311 结对编程项目-四则运算 第三周总结

    20172307 / 20172311 结对编程项目-四则运算 第三周阶段总结

    小组信息

    • 领航员:赵晓海
      副驾驶:黄宇瑭
    • 成绩划分:
      赵晓海:60%
      黄宇瑭:40%

    相关测试过程及截图

    • Creat类(创建题目类)测试截图:
    • Transform类(中缀转后缀类)测试截图:
    • Calculate类(计算后缀表达式)测试截图:
    • Test类(交互程序)
      代码:
        import java.text.DecimalFormat;
        import java.text.FieldPosition;
        import java.text.NumberFormat;
        import java.text.ParsePosition;
        import java.util.Scanner;
    
        /*
        Test.java             Author:赵晓海   黄宇瑭
    
        实现生成题目、让用户答题、判断题目是否正确、统计题目个数和正确率。
         */
        public class Test {
            public static void main(String[] args) {
    
                int num;  // 题目个数
                int correct=0;  //回答正确的题目个数
                int rate; //  题目等级
                double accuracy;  //  答题的正确率
                String []Question;  //存放题目的数组
        
                Scanner scanner=new Scanner(System.in);
                System.out.print("请您输入要生成题目的个数: ");
                num=scanner.nextInt();
    
                Question=new String[num];//实例化保存生成题目的数组
    
                System.out.print("请你输入生成题目的等级: ");
                rate=scanner.nextInt();
    
                Create create=new Create(num,rate);
    
                create.QuestionNum();
                Question=create.getArraylist();
    
                int start=0;
                while (start<num)
                {
                    System.out.println("第"+(start+1)+"题: "+Question[start]+"
    "+"请输入您的计算结果: ");
                    String answer=scanner.next();
    
                    Transform trans=new Transform(Question[start]);
                    trans.transform();
    
                    String transformed =trans.getLast();
    
                    Calculate calcu=new Calculate(transformed);
                    calcu.ToResult();
                    String result=calcu.getResult();
    
                    if (answer.equals(result)==true)
                    {
                        correct++;
                        System.out.println("正确答案是: "+result+" ,您的回答正确,请继续作答");
                        System.out.println();
                    }
    
                    else
                    {
                        System.out.println("正确答案是: "+result+" ,您的回答错误,请继续作答");
                        System.out.println();
                    }
    
                    start++;
                }
    
                System.out.println();
    
                accuracy=(double)correct/num;
                DecimalFormat fmt=new DecimalFormat("0.####");
                String accurancy2=fmt.format(accuracy);
                Double accurancy3=Double.valueOf(accurancy2);
    
                NumberFormat format = NumberFormat.getPercentInstance();
    
                System.out.println("您一共回答了"+num+"道题目,答对了"+correct+"道题目"+"
    答题的正确率为: "+format.format(accurancy3)
            }
        }
    
    • Test测试效果截图

    测试中遇到的问题及解决方法

    • 交互程序运行时,输出题目后,直接跳出下一句,没有给用户输入。

    • 解决方法:查看代码后发现只要把原来的System.out.print改成System.out.println就可以了。

    (结对项目码云链接)

    小组成员项目感想

    黄宇瑭:这次结对项目完成后感觉自己的能力得到了锻炼。在这里再次感谢我的结队伙伴对我的帮助。
    赵晓海:结对编程真的比自己编程的效率高的多!!!非常感谢结对伙伴给予我的巨大帮助!!!

    类图更新

    PSP更新

    PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
    Planning 计划 60 70
    Estimate 估计这个任务需要多少时间 30 30
    Development 开发 600 700
    Analysis 需求分析 (包括学习新技术) 120 180
    Coding Standard 代码规范 (为目前的开发制定合适的规范) 30 20
    Design UML 设计项目UML类图 60 90
    Coding 具体编码 180 210
    Code Review 代码复审 180 120
    Test 测试(自我测试,修改代码,提交修改) 120 120
    Size Measurement 计算工作量(实际时间 30 20
    Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 30 60
    合计 1440 1620

    小组结队编程照片

  • 相关阅读:
    HDU 5791 Two(训练题002 F)
    HDU 5783 Divide the Sequence (训练题002 B)
    关于01背包和完全背包二重循环的顺序(前人之技,后人惊叹)
    关于01背包求第k优解
    最长上升子序列(logN算法)
    ACM课程总结
    Problem F
    关于狄克斯特拉算法(dijkstra)总结
    Problem I
    OBJ文件格式分析工具: objdump, nm,ar
  • 原文地址:https://www.cnblogs.com/20172307hyt/p/9042911.html
Copyright © 2011-2022 走看看