2016012004小学四则运算软件练习报告
codiing.net地址:https://git.coding.net/weiwandaixuyun/sizeyunsuan.git
由于java基础过差,以目前水平不能做出要求的四则运算,故有在网上查找些代码并进行部分修改,望谅解。
1:需求分析
- 程序可接收一个输入参数n,然后随机产生n道加减乘除(分别使用符号+-*÷来表示)练习题
- 每个数字在 0 - 100 之间,运算符在3个到5个之间
- 每个练习题至少要包含2种运算符
- 因为对象是面向小学生,故不能出现负数和分数。
2:功能设计:
输入一个n,然后随机产生n个四则运算小学题目
么有拓展功能
3:核心代码:
public static void main(String[] args) { operation(); } public static void operation() { Random random = new Random(); for (int parameter = 1; parameter <= 300; parameter++) { // 循环300次 int algorithm = random.nextInt(4); // 通过随机数获取运算法则 + - * ÷ int num1 = random.nextInt(100); int num2 = random.nextInt(100); // 获取两个一百以内的随机数 switch (algorithm) { case 0: // algorithm为0时为加法运算 System.out.println("第" + parameter + "个:"); // 输出序号 System.out.println(num1 + "+" + num2 + "=" + (num1 + num2)); break; case 1: // algorithm为1时为减法运算 System.out.println("第" + parameter + "个:"); System.out.println(num1 + "-" + num2 + "=" + (num1 - num2)); break; case 2: // algorithm为2时为乘法运算 System.out.println("第" + parameter + "个:"); System.out.println(num1 + "*" + num2 + "=" + (num1 * num2)); break; case 3: // algorithm为3时为除法运算 if (num2 == 0) { // 当被除数为0时,算式不成立,循环参数自减 parameter--; break; } else { // 除得尽的不保留小数 if (num1 % num2 == 0) { System.out.println("第" + parameter + "个:"); System.out.println(num1 + "/" + num2 + "=" + (num1 / num2)); } else { // 除不尽的保留三位小数 System.out.println("第" + parameter + "个:"); double num = (double) num1 / num2; String ss = new DecimalFormat("0.000").format(num); // 格式化 System.out.println(num1 + "/" + num2 + "=" + ss); } } break; default: break;
4:测试运行:目前未能测试成功。
5:总结:
目前代码能力是真的很弱,当第一次软导课听到这个题目,就一点思路都没有。后来然后又有博客园上的作业,更是头疼,也就只能慢慢的摸索,在网上也看了很多,也是到了最后交作业的时间,被迫只能交了作业,接下来会继续学习,完成修补。
6:PSP:
PSP2.1 |
任务内容 |
计划共完成需要的时间(min) |
实际完成需要的时间(min) |
Planning |
计划 |
8 |
10 |
· Estimate |
· 估计这个任务需要多少时间,并规划大致工作步骤 |
8 |
5 |
Development |
开发《网上借鉴源代码》 |
60 |
60 |
· Analysis |
· 需求分析 (包括学习新技术) |
6 |
10 |
· Design Spec |
· 生成设计文档 |
5 |
6 |
· Design Review |
· 设计复审 (和同事审核设计文档) |
4 |
6 |
· Coding Standard |
· 代码规范 (为目前的开发制定合适的规范) |
3 |
3 |
|
|||
· Coding |
· 具体编码 |
36 |
21 |
· Code Review |
· 代码复审 |
7 |
9 |
|
|||
Reporting |
报告 |
9 |
6 |
|
|||
· Postmortem & Process Improvement Plan |
· 事后总结, 并提出过程改进计划 |
3 |
3 |