需求分析

  • 能够根据输入要求生成一定数量和数值范围的题目
  • 对题目自动计算得到正确的答案
  • 支持作答并检查计算结果

功能设计

  • 随机数以及运算符产生

    • 用产生随机数的原理,对已经定义好的运算符数组进行匹配,并加以数量控制,产生符合要求的算式
    • 利用字符串数组存储生成的题目
  • 利用栈计算题目
    • 将算数表达式分成运算符和运算数两部分,分别存储在两个栈中,一边扫描表达式一边计算,提高计算效率。因此对于运算符要判断运算符的优先级,比如当前优先级若低于栈顶的优先级,则先把高的优先级运算符计算出来。
    • 用与题目数组同样大小的字符串数组存储计算结果,可以使题目与答案一一对应

设计实现

  • 题目生成类:Create.java
  • 计算类:Calculate.java
  • 分数类:Fraction.java
  • 主控制类:Main.java

测试运行

PSP统计

PSP2.1 Personal Software Process Stages Time Senior Student Time
Planning 计划 30 15
Estimate 估计这个任务需要多少时间 40 46
Development 开发 35 80
Analysis 需求分析 (包括学习新技术) 4 7
Design Spec 生成设计文档 4 6
Design Review 设计复审 4 6
Coding Standard 代码规范 3 3
Design 具体设计 10 12
Coding 具体编码 10 10
Code Review 代码复审 3 10
Test 测试(自我测试,修改代码,提交修改) 3 15
Reporting 报告 9 10
  测试报告 2 1
  计算工作量 4 6
  并提出过程改进计划 3 3

作业小结

  • 未实现将题目与答案存入文件以及题目查重的功能,仍需继续完善

源码地址: https://coding.net/u/NInjaHong/p/firstwork/git?public=true

转载于:https://www.cnblogs.com/nanase/p/8684636.html

个人作业1——四则运算题目生成程序(基于java)相关推荐

  1. 【2017下集美大学软工1412班_助教博客】个人作业1——四则运算题目生成程序 成绩公示...

    作业要求 个人作业1--四则运算题目生成程序(基于控制台) 使用 -n 参数控制生成题目的个数 使用 -r 参数控制题目中数值 生成的题目中如果存在形如e1 ÷ e2的子表达式,那么其结果应是真分数 ...

  2. 个人作业1——四则运算题目生成程序(基于控制台)

    题目描述: 从<构建之法>第一章的 "程序" 例子出发,像阿超那样,花二十分钟写一个能自动生成小学四则运算题目的命令行 "软件",满足以下需求: 除 ...

  3. 个人作业1 四则运算题目生成程序

    项目地址:https://gitee.com/wenguixin/javascript_four_algorithms.git 1.题目描述: 生成定量小学四则运算的题目. 2.需求分析: 在现今的时 ...

  4. 个人作业1——四则运算题目生成程序

    需求分析: 1.控制运算表达式的题目数量,根据键盘输入数字提供对应数量表达式 2.运算符个数不能超过三个 3.能够自动生成四则运算 4.随机生成分数运算或整数运算 5.程序判断对错并给出正确答案 6. ...

  5. 高级软件工程2017第2次作业—— 个人项目:四则运算题目生成程序(基于控制台)...

    Deadline:2017-09-27(周三) 21:00pm (注:以下内容参考 福大软工作业 和集大个人作业 ) 0.前言 很多童鞋在本课程的目标和规划中,都表示希望能提高自己的实践能力. Pra ...

  6. java四则运算考试系统_小学生四则运算出题软件-基于java控制台的实现

    .题目描述: 1. 使用 -n 参数控制生成题目的个数,例如 Myapp.exe -n 10 -o Exercise.txt 将生成10个题目. 2. 使用 -r 参数控制题目中数值(自然数.真分数和 ...

  7. 四则运算题目生成程序

    一.题目描述: 实践能力的提高当然就是得多动手了,那么就从第一个个人项目开始吧,用一周的时间完成一个基于控制台的四则运算程序,实现一个自动生成小学四则运算题目的命令行程序. 从<构建之法> ...

  8. python相关毕设题目_基于java的一个有创意的web毕设题目

    基于java的一个有创意的web毕设题目 一个有创意的web毕设题目 本课题将结合基于Java Web技术的名师一对一课程预约系统,根据本课题的最终目标,在线用户注册.相关信息发布.在线咨询.预约试听 ...

  9. 四则运算题目生成程序(基于控制台)

    基于控制台的四则运算 代码地址 a.需求分析 运算符为 +, −, ×, ÷ 除了整数以外,还要支持真分数的四则运算,真分数的运算,例如:1/6 + 1/8 = 7/24 要求能处理用户输入的真分数, ...

最新文章

  1. 惊呆了,Spring Boot居然这么耗内存!
  2. cve-2016-6662 mysql远程代码执行/权限提升 漏洞
  3. WIN7 X64 Setup Oracle Developer Suite 10g
  4. java.函数参数太多,Java方法参数太多怎么办—Part 2—引入参数对象,javapart
  5. Java多线程--synchronized修饰普通方法和修饰静态方法的区别
  6. 超级简单:一步一步教你创建一小型的asp.net mvc 应用程序
  7. 合格的前端不少,优秀的不多
  8. jQuery王者归来
  9. Android四大组件---BroadcastReceiver
  10. 求最近点对算法分析 closest pair algorithm
  11. IList对象排序算法
  12. const 并不能加快 C 代码的运行速度?
  13. 兰州网络教育计算机基础考试,2017年兰州事业单位公共基础备考:计算机基础知识...
  14. 论文画图软件(转载)
  15. 1252 :[蓝桥杯2015初赛]奇妙的数字 C/C++
  16. 500G 史上最全的JAVA全套教学视频网盘分享
  17. 【PIC单片机】-- LCD的相关知识
  18. 如何不靠运气变得富有 (十四) —— 特殊技能(specific knowledge)极富创造性或技术性
  19. CST2020 安装包和安装步骤
  20. Zlib 1.2.11 Windows 编译

热门文章

  1. flask-uploads扩展的使用笔记
  2. .NET笔试题(关于迭代的:遍历XML中的FileName)
  3. 一个不能进入系统的小问题——供远程为别人解决问题时参考。
  4. C++---哈希闭散列与开散列
  5. 【操作系统】—操作系统的发展与分类
  6. Java基础---继承
  7. 面向切面编程:操作日志
  8. 折扇的保养方法是什么?
  9. 品牌就是复购,运营就是零售
  10. 教大家一个简单的办法