个人开发流程—任倍弘
个人开发流程—四则运算
一.题目要求
(1)命令行程序接受一个数字输入,然后输出相应数目的四则运算题目和答案。
(2)运算式子必须至少有两个运算符,运算数字是在 100 之内的正整数,答案不能是负数。
二.需求分析
(1)一次可以出一千道道题目,并且没有重复的,把题目写入一个文件中
(2)当你有多于一个运算符的时候,如何对一个表达式求值?
三.Psp
任务内容 |
计划完成需要的时间(min) |
实际完成需要的时间(min) |
计划 |
60 |
90 |
l 明确需求和其他相关因素,估计每个阶段的时间成本。 |
20 |
25 |
开发 |
60 |
108 |
l 需求分析 |
5 |
10 |
l 生成设计文档 |
5 |
8 |
l 设计复审 |
10 |
15 |
代码规范 |
5 |
10 |
具体设计 |
20 |
30 |
具体编码 |
90 |
150 |
代码复审 |
10 |
15 |
测试 |
10 |
15 |
报告 |
15 |
20
|
l 测试报告 |
10 |
10 |
l 计算工作量 |
5 |
5 |
l 事后总结,并提出改进计划 |
5 |
5 |
四.测试代码
public static void main(String[] args) { System.out.println("请输入要输出的题目数量"); Scanner sc=new Scanner(System.in); int inter=sc.nextInt(); for (int i=1; i<=inter;i++) { Random r=new Random(); String[] str=new String[] {"+","-","*","/"}; int [] numbers=new int[100]; for(int j=1;j<=100;j++) { numbers[j-1]=j; } String str1=str[r.nextInt(4)]; String str2=str[r.nextInt(4)]; double num1=numbers[r.nextInt(100)]; double num2=numbers[r.nextInt(100)]; double num3=numbers[r.nextInt(100)]; double result = 0; double re1=0; double re2=0; if(str1=="*") { re1=num1*num2; switch(str2) { case "/": result=re1/num3; break; case "+": result=re1+num3; break; case "-": result=re1-num3; case "*": result=re1*num3; break; } } if(str1=="/") { re1=num1/num2; switch(str2) { case "*": result=re1*num3; break; case "+": result=re1+num3; break; case "-": result=re1-num3; break; case "/": result=re1/num3; break; } } if(str1=="+") { re1 = num1+num2; switch(str2) { case "-": result = re1-num3; break; case "*": re2 = num2*num3; result = re2+num1; break; case "/": re2 = num2/num3; result = re2+num1; break; case "+": result = re1+num3; break; } } if(str1=="-") { re1 = num1-num2; switch(str2) { case "+": result = re1+num3; break; case "*": re2 = num2*num3; result=num1-re2; break; case "/": re2 = num2/num3; result = num1-re2; break; case "-": result = re1-num3; break; } }
五.总结
在现实生活中觉得简单的四则运算,用代码来实现时并不简单,要注意的问题很多,例如:四则运算的符号优先问题,随机数生成。
拿到题目时要先有大致的逻辑去写代码,有了清晰的逻辑就知道写代码的顺序,就能知道自己写代码的步骤,能具体写出相应的代码。
写代码时有不懂得的就要问,或者上网查,找到相关的解决方法,可以借鉴别人写的代码,自己在进行整改,最后达到自己想要的结果。