博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
结对编程项目-四则运算整体总结
阅读量:4971 次
发布时间:2019-06-12

本文共 1221 字,大约阅读时间需要 4 分钟。

需求分析

实现一个命令行程序,要求:

  • 自动生成小学四则运算题目(加、减、乘、除)
  • 生成题目去重
  • 支持多运算符(比如生成包含100个运算符的题目)
  • 支持真分数
  • 统计正确率
  • 处理生成题目并输出到文件,生成题目后从文件读入并判题
  • 多语言支持

我们需要实现以下几个功能:

  • 可通过输入设置语言
  • 随机生成四则运算题目,通过循环使得生成的题目的计算过程不含负数且不重复,并可通过输入控制生成的题目数目以及数值的范围
  • 能将生成的题目输出到文件,并从文件中获取题目实现自动计算从而判断回答是否正确
  • 能将计算的结果转化为分数(如真分数五分之三表示为3/5,真分数二又八分之三表示为2’3/8。)
  • 能计算通过统计正确的题数来计算正确率

设计思路

上周中我们已经实现了中缀表达式的计算以及分数的转换()。

根据需求,程序还需要新定义方法来实现随机生成运算题目、多种语言的支持。并且需要在主类中实现文件操作、生成题目的合法性检验、判断用户的回答是否正确以及调用其他的类的功能。于是我们新定义了生成题目的Produce类和支持多语言的Language类,并重写了MyDCTester类的方法。

UML类图

1591776-20190415212833016-557963659.png

运行过程截图

1591776-20190415215617217-189331218.jpg

遇到的困难及解决方法

  • 问题一:测试时IDEA自带的junit3无法正常使用
  • 问题一解决办法:本地下载JUnitGenerator.jar包,在Intellij中依次选择File->Setings->Plugins,在Install plugin from disk导入JUnitGenerator.jar包即可

代码托管地址

对结对的小伙伴做出评价

我的结对搭档是龚仕杰,在本周的编程过程中,我遇到了许多的问题,通过与搭档的讨论成功得到了解决,在这过程中他不遗余力地帮助我,希望下次还有合作的机会。

PSP

PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划 15 30
Development 开发
Analysis 需求分析 (包括学习新技术) 35 60
Design Spec 生成设计文档 45 45
Design Review 设计复审 (和同事审核设计文档) 30 25
Coding Standard 代码规范 (为目前的开发制定合适的规范) 30 35
Design 具体设计 130 150
Coding 具体编码 230 300
Test 测试(自我测试,修改代码,提交修改) 30 35
Reporting 报告 60 80
Size Measurement 计算工作量 15 25
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 25 25
合计 680 855

转载于:https://www.cnblogs.com/killer-queen/p/10707167.html

你可能感兴趣的文章
POJ 1840 Eqs HASH
查看>>
python调用shell小技巧
查看>>
TL431的几种常用用法
查看>>
BZOJ 1833: [ZJOI2010]count 数字计数( dp )
查看>>
关于toString()和String()要说几句话
查看>>
bzoj 3751[NOIP2014]解方程
查看>>
CSS(二) 文字样式属性,背景和列表
查看>>
js 经典闭包题目详解
查看>>
在项目中移除CocoaPods
查看>>
【洛谷】CYJian的水题大赛【第二弹】解题报告
查看>>
POJ 1703 Find them, Catch them【种类/带权并查集+判断两元素是否在同一集合/不同集合/无法确定+类似食物链】...
查看>>
L1-5. A除以B【一种输出格式错了,务必看清楚输入输出】
查看>>
Git一分钟系列--快速安装git客户端
查看>>
纵越6省1市-重新启动
查看>>
hive安装以及hive on spark
查看>>
jz1074 【基础】寻找2的幂
查看>>
Wannafly模拟赛5 A 思维 D 暴力
查看>>
【Linux开发】CCS远程调试ARM,AM4378
查看>>
Linux之ssh服务介绍
查看>>
Java Swing提供的文件选择对话框 - JFileChooser
查看>>