20165215 结对编程——四则运算第二周

20165215 结队编程项目——四则运算第二周

目录

需求分析

### 基本需求 - 实现一个命令行程序,要求: - 自动生成小学四则运算题目(加、减、乘、除) - 支持整数 - 支持多运算符(比如生成包含100个运算符的题目) - 支持真分数 - 统计正确率 - 多语言支持:```简体中文```,``` 繁體中文```,``` English``` - 生成题目去重

设计思路

核心代码

- 声明哈希表使三种语言对应下面数组第1、2、3位 ``` System.out.printf("Please choose a language and type it! \n" + "请你选择一种语言并且输入对应的缩写!\n" + "請妳選擇壹種語言並且輸入對應的縮寫!\n" + "1.English 2.简体中文 3.繁體中文\n"); HashMap lanList = new HashMap(); lanList.put("1",0); lanList.put("2",1); lanList.put("3",2); ``` - 生成整数类型的多项表达式 ``` public IntegerExpression(int itemNum){ this.itemNum = itemNum; if(itemNum<2)this.itemNum=2;//强制多项表达式的数字不少于两个 else { for(int i =0;i < itemNum;i++){ num.add(initItem()); if(i>=1){if(op.get(i-1)=="/"){//若前面已执行完除法运算,防止其出现小数点 num.set(i-1,num.get(i)*((int)(Math.random()*4+2))); op.add("+"); } else op.add(initOp()); } else op.add(initOp()); } } } ```

功能截图

结对感受

- 结对对象:20165209 陈思兵 - [伙伴博客](www.cnblogs.com/tutu233/p/8911015.html) - 感受:本次结对编程中我们探讨出问题的求解思路后,便可以分工进行类的创建,每人负责不同的区域,遇到问题时互相答疑解惑,最后再一起编写主类将它们串起来,大大提升了编写的效率。

PSP

PSP2.1 Personal Software Process Stages 预估耗时(小时) 实际耗时(小时)
Planning 计划 1 1.5
Estimate 估计这个任务需要多少时间 11.5 15
Analysis 需求分析 (包括学习新技术) 2 3
Design Spec 生成设计文档 0.5 0.5
Design Review 设计复审 (和同事审核设计文档) 0.5 0.5
Coding Standard 代码规范 (为目前的开发制定合适的规范) 0.5 0.5
Design 具体设计 1 1.5
Coding 具体编码 1 1.5
Code Review 代码复审 0.5 0.5
Test 测试(自我测试,修改代码,提交修改) 1 1
Reporting 报告 1 1
Test Report 测试报告 1 1.5
Size Measurement 计算工作量 0.5 0.5
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 1 1.5
posted @ 2018-04-22 23:35  匪夷所思05  阅读(151)  评论(0编辑  收藏  举报