需求分析

  • 实现一个命令行程序,要求:自动生成小学四则运算题目(加、减、乘、除)
  • 可实现多个运算符一起运算
  • 可以真分数形式输出结果
  • 测试结果的正确性
  • 统计题目完成数并计算正确率

    设计思路

  • 实验首先是完成一个计算器的功能,可以实现简单的+、-、*、/运算
  • 实现多运算符,编入四个类分别实现整数运算、真分数运算、判断结果正确并计算正确率
  • 利用JUnit检测非法输入
  • 设计一个主类生成随机数,生成题目,并判断正确率
  • 设计测试类,利用JUnit测试整数类与分数类的四则运算

    UML类图

功能截图

Junit测试


代码托管地址

  • 四则运算

实验过程中遇到的困难及解决方法

实验要求生成随机四则运算,最难的在于真分数与多运算符的实现,以及分多个类来实现算法。
  • 我们选择参考邹欣老师的学生编写的代码《编写一个能自动生成小学四则运算题目的程序》尝试写了生成随机数的代码。但是对后续代码依然不知从何下手。而后我们选择请教了其他同学,并且参考了他们的代码。在利用生成随机数和switch语句来实现随机四则运算的代码很是精妙,如下:
Random random = new Random()
random.nextInt()
  • 但是在真分数类的部分代码以及如何实现计算题随机的长度也没弄懂,另外的去重功能也进行了多次尝试,暂时还没有成功,在下周学习我们会加强学习进度。

结对总结及评价

  • 在看到结对编程的题目时,我们首先想到的是C语言里的运用,再运用到java里,大概的思路是有的,整合的过程感觉很难,与同伴学习的过程双方也对问题进行了更全面的分析,在参考老师的资料以及网上找到的资料,同时也结合了同学的解答,有了初步的编程,但过程中遇到多次无法运行的情况,比如找不到一些类名,方法调用语句出错,在IDEA的提示下最终解决。
  • 在之后的学习中,我们的结对学习应该提前进入学习轨道,这周的时间开始的比较晚,虽然有了整体思路,但是没有很快入手,所以我们对彼此的督促作用还需加强,在编程方面,也要对书上的代码进行更多的思考,可以做到多看多记多动手,慢慢转化为自己的东西。
  • 对我的小伙伴,因为互为舍友,彼此很了解,两个人的学习带给我很大的动力,学习的过程也很快乐,很多不懂得地方也会得到清晰的解答,让我找到很多自己思考的漏洞,很感谢我的小伙伴hh希望以后的学习里我们会有更大的进步!

结对学习照片>_<

参考或引用的设计、实现

  • 结对编程项目-四则运算
  • Intellj IDEA 简易教程——单元测试
  • 现代软件工程讲义 个人项目和结对项目练习 四则运算
  • 2017-2018-2 165X 『Java程序设计』课程 结对编程练习_四则运算
  • 编写一个能自动生成小学四则运算题目的程序
PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟)
Planning 计划
Estimate 估计这个任务需要多少时间 360 500
Development 开发
Analysis 需求分析 (包括学习新技术) 30 35
Design Spec 生成设计文档 30 45
Design Review 设计复审 (和同事审核设计文档) 25 20
Coding Standard 代码规范 (为目前的开发制定合适的规范) 20 40
Design 具体设计 60 80
Coding 具体编码 180 300
Code Review 代码复审 20 25
Test 测试(自我测试,修改代码,提交修改) 150 200
Reporting 报告
Test Report 测试报告 15 15
Size Measurement 计算工作量 10 10
Postmortem & Process Improvement Plan 事后总结, 并提出过程改进计划 60 90
合计 960 1360

转载于:https://www.cnblogs.com/besty-zyx/p/8849822.html

20165330 结对编程项目-四则运算 第一周相关推荐

  1. 20162303 结对编程项目-四则运算 第一周输出阶段总结博客

    第一周(2017-5-14 23:59截止)输出阶段总结博客 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 ...

  2. 20172307 结对编程项目-四则运算 第二周 阶段总结

    20172307 结对编程项目-四则运算 第二周 阶段总结 (结队项目码云地址) 相关过程截图(关键代码处加了注释) 编写出实现中缀转后缀的类Transform /*Transform.java 作者 ...

  3. 20172305 结对编程项目-四则运算 第二周 阶段总结

    结对编程的好丽友 20172323 王禹涵:中缀转后缀 20172314 方艺雯:后缀表达式的计算 20172305 谭鑫:中缀表达式的输出 遇到的困难和解决方案 问题1:括号的添加方法 解决方案: ...

  4. 结对编程项目-四则运算(第一周阶段性总结)

    结对编程项目-四则运算(阶段性总结) 需求分析 题目生成 多运算符(可设计层级) 包含括号(可单独使用) 无重复题目(可单独使用) 生成有意义的题目(例如:5x(5x5)等等) 等级划分 Level ...

  5. 结对编程项目-四则运算整体总结

    结对编程项目-四则运算整体总结 在这一周中,我和我的搭档完成项目并实现了拓展需求,现在我将本项目的成果做一个总结 一.需求分析 实现一个命令行程序,要求: 1.自动生成小学四则运算题目(加.减.乘.除 ...

  6. 20165318 结对编程项目-四则运算 阶段总结

    20165318 结对编程项目-四则运算 阶段总结 目录 一.需求分析 二.设计思路 三.实现过程中的关键代码解释 四.测试方法 五.运行过程截图 六.代码托管 七.遇到的困难及解决方法 八.对结对小 ...

  7. 结对编程项目-四则运算阶段性总结

    结对编程项目-四则运算阶段性总结 在这段时间的结对编程过程中,我和我的组员一同编程,初步完成了项目的要求,现在我将阶段性的成果做一个总结 一.需求分析 实现一个命令行程序,要求: 1.自动生成小学四则 ...

  8. 结对编程项目-四则运算答题器-设计文档

    项目名称:四则运算生成器 项目成员:焦广鑫,杜念泽 开发环境:Python2.7 需要实现的功能:加.减.乘.除四则基本运算 转载于:https://www.cnblogs.com/jgxblog/p ...

  9. 结对编程项目---四则运算

    同组人:郝哲 黄云龙 评价:在这次作业完成中我们都积极地查询了有关资料,并向大神咨询获得了帮助,学习的过程中更更加深入的了解了C#的编写. 感谢:感谢同组同学的帮助,感谢大神的辅导,感谢百度贴吧大神的 ...

最新文章

  1. 不需要定义神经网络结构就可以恢复模型的两方法
  2. django mysql debug_部署前准备--使用Mysql之Django Debug Toolbar安装以及配置
  3. anjuta 连接mysql_ubuntu系统下如何实现C/C++开发环境搭建(IDE)
  4. ruby之添加当前文件路径到$LOAD_PATH
  5. C#重写Equals方法步骤
  6. 手机web网页制作的认识(有关meta标签)
  7. 故障分析:从Oracle数据库故障到Linux nproc算法
  8. 编译GDAL支持OpenCL使用GPU加速
  9. 简单的form表单文件上传
  10. 按网络管理模式 计算机网络可分为,计算机网络应用 按网络管理模式分类
  11. PPAPI中使用OpenGL ES绘图
  12. Dmoz中文目录收录的中文博客
  13. 让Ipad买前爱奇艺买后生产力——浏览器编程之Projector运行Idea(超详细)
  14. 简体字转换繁体字的winfrom小程序
  15. python语言基础(六)列表、元组、字典、集合
  16. 特斯拉在中国凭什么翻身?自研芯片还是自动驾驶?
  17. 天黑请闭眼 杀人游戏 规则 02
  18. 推箱子游戏java毕业答辩ppt_基于Java推箱子游戏的设计与实现
  19. uniapp判断当前运行环境 app h5 微信小程序
  20. 基于SU-03T语音模块的超声波拍照系统

热门文章

  1. sql server存储过程中SELECT 与 SET 对变量赋值的区别
  2. ModelBasedCompressiveSensing
  3. SFB 项目经验-81-在企业内部外部限制访问ECP
  4. python发送给邮件 转
  5. python--windows下安装BeautifulSoup
  6. appium: adb server is out of date.killing
  7. Android开源测试框架
  8. [翻译]帮助文档-jQuery 选择器
  9. 业务直通式管理,你真的了解吗?
  10. 用Kotlin写Android Gradle脚本