结对作业

三年级

学号1:211606386 姓名:姚皓钰 学号2:211606323 姓名:刘世华

一、预估与实际

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

二、需求分析

我通过百度一下的方式了解到,小学三年级数学有如下的几个特点:

  • 特点1:小学三年级进行四则混合运算,运算符在2~4个之间,可以加括号,减法运算的结果不能有负数,除法运算除数不能为0,不能有余数。
  • 特点2:在没有括号的算式里,如果只有加、减法或者只有乘、除法,都要从左往右按顺序计算。
  • 特点3:算式有括号,要先算括号里面的,再算括号外面的;大、中、小括号的计算顺序为小→中→大。括号里面的计算顺序遵循以上1、2、3条的计算顺序。

三、设计

1. 设计思路

  • 1、首先生成随机数
  • 2、生成随机四则算式
  • 3、计算
  • 4、输出到txt文件

2. 实现方案

  • 准备工作:先在Github上创建仓库,克隆到本地...
  • 正则表达式拆分
  • 逆波兰表达式

四、编码

  • 首先明确需要几个函数,类。
  • 其次列举一些注意事项,以及编码规范。
  • 然后在开始编码。
  • 最后检查bug。

1. 调试日志

  • 运算顺序有误,没有按照括号内的先运算。

2. 关键代码

Stack<String> stack = new Stack<String>();
double result = 0;
double number1,number2;
String oper;
for(String s : suanshi){
    if(isNumber(s)){
        stack.push(s);
}
    else{
        oper=String.valueOf(s);
        number1=Double.parseDouble(stack.pop());
        number2=Double.parseDouble(stack.pop());
        switch(oper){
        case"+":
            result = number2 + number1;
            break;
        case"-":
            result = number2 - number1;
            break;
        case"*":
            result = number2 * number1;
            break;
        case"/":
            result = number2 / number1;
            break;
        default:
             break;
}
stack.push(String.valueOf(result));
}
}
return
Double.parseDouble(stack.pop());
}

3. 代码规范

  • 代码中的命名严禁使用拼音与英文混合的方式,更不允许直接使用中文的方式。
  • 未定义的常量不可使用在代码中
  • 左大括号前不换行。左大括号后换行。右大括号前换行。右大括号后还有 else 等代码则不换行;表示终止的右大括号后必须换行。
  • 在 if/else/for/while/do 语句中必须使用大括号,且保留字与括号之间都必须加空格。

五、测试

测试先输入年级(1、2、3)结果正确,输入年级(5、a)错误。
输入题目数量得到相应数量相应年级的题目及答案。

六、总结

双人结对完成任务效率要比一个人更高,出错率也会更低。因为有同伴的监督,也会更加勤奋的学习。

posted @ 2018-09-19 12:03  浮云飞絮  阅读(101)  评论(1编辑  收藏  举报