结对学习编程(第一周)

结对编程阶段总结(第一周)

需求分析

  • 实现一个命令行程序,要求:
  • 自动生成小学四则运算题目(加、减、乘、除)(已实现)
  • 支持整数(已实现)
  • 支持多运算符(比如生成包含100个运算符的题目)(还未实现)
  • 支持真分数(未实现)
  • 统计正确率(未成功实现)

设计过程

  1. 首先将输出的函数作为一个类单独分离出来。
  2. 再将输出类细化。在本代码中我将其分为了生成算式和判断正误的两个部分。
  3. 考虑到随机生成题目的要求,我想到了所学到的Random类。并尝试引用。
  4. 再将输出函数打磨。开始进行主函数的编辑。
  5. 主类的主要任务就是对正确题目的数目进行统计,以及提示程序使用者的答题情况。目前进行答题情况的统计是为了后续加入统计系统而准备的。
  6. 基本完成编写。

关键部分

判断相关运算并计算结果

switch(this.operator().toCharArray()[0]){
            case '+':result=this.getA()+this.getB();break;
            case '-':result=this.getA()-this.getB();break;
            case '×':result=this.getA()*this.getB();break;
            case '÷':result=this.getA()/this.getB();break;
        }

使用Random类生成随机题目

a=new Random().nextInt(100);
            b=new Random().nextInt(100);
            i=new Random().nextInt(4);

Judge函数,用于判断答案是否正确

public  boolean judge(String s){
        int i,result = 0;
        try{
            i=Integer.valueOf(s).intValue();
        }catch(Exception e){
            return false;
        }

运行过程截图

代码托管

码云链接

编程过程中遇到的问题

  1. 起初不知道如何生成Random题目,但是对课本非常熟悉的李天林同学立刻想到了Random类。我们一起翻书查找,很快解决了问题。
  2. 统计使用者题目正确数量上遇到了一定的阻碍,本想直接实现统计正确率的,但是由于时间不足,没有能够将其完美实现,定会在下周完成。
  3. 对于题目数量的要求目前还只能通过修改代码本体来实现,这是一个非常失败的点,但是我们会努力和尝试区域做的更好,在要求时间内完成代码。

PSP表格

步骤 耗时 百分比
学习相关思路 40min 26%
设计程序思路 30min 20%
代码实现 60min 40%
bug调试 20min 13%
博客总结 40min 26%

对伙伴的评价

我与李天林同学的相处非常融洽,代码编写的过程也是两人一起努力构思、努力实现的结果。没有什么特别需要改进的地方,望继续保持。

结对学习照片

原文地址:https://www.cnblogs.com/jph596299009/p/8850087.html