个人软件开发流程-----计应191第一小组杨文静
四则运算练习
需求分析: 随机生成四则运算
主要代码:
package si; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.PrintStream; import java.io.Writer; import java.util.Scanner; public class SiZeYunSuan { public static void main(String[] args){ int sum=0; int sum1=0; int p=0; int n=0; double d1; double d2; int x=10; int i=0; int answer; boolean f=false; String cx="";//重新生成错题 for(i=0;i<10;i++) { int a=(int)(Math.random()*100); int b=(int)(Math.random()*100); int c=(int)(Math.random()*4); //随机生成0到4任意一个数字 if(c==0) { d1=a+b; cx = (a+"+"+b+"= "); System.out.print(a+"+"+b+"= "); Scanner in = new Scanner(System.in); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("========================"); System.out.println(" 恭喜你答对了 "); System.out.println("========================"); //n++; sum++; } else{ f=false; System.out.println("========================"); System.out.println(" 很遗憾答错了 "); System.out.println("========================"); sum1--; System.out.println(cx); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("========================"); System.out.println(" 恭喜重新答对了 "); System.out.println("========================"); sum++; } } } if(c==1) { d1=a-b; cx = (a+"-"+b+"= "); System.out.print(a+"-"+b+"= "); Scanner in = new Scanner(System.in); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("========================"); System.out.println(" nice,正确 "); System.out.println("========================"); sum++; } else{ f=false; System.out.println("========================"); System.out.println(" 不好意思,下次努力 "); System.out.println("========================"); sum1--; System.out.println(cx); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("========================"); System.out.println(" nice,从新做正确 "); System.out.println("========================"); sum++; } } } if(c==2) { d1=a*b; cx = (a+"*"+b+"= "); System.out.print(a+"*"+b+"= "); Scanner in = new Scanner(System.in); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("========================"); System.out.println(" 你太优秀了,正确 "); System.out.println("========================"); sum++; } else{ f=false; System.out.println("=========================="); System.out.println("继续加油,下次一定可以做对"); System.out.println("=========================="); sum1--; System.out.println(cx); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("======================== "); System.out.println(" 正确,我说你可以吧 "); System.out.println("======================== "); sum++; } } } if(c==3) { d1=a/b; cx = (a+"/"+b+"= "); System.out.print(a+"/"+b+"= "); Scanner in = new Scanner(System.in); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("========================"); System.out.println(" 很好,继续努力 "); System.out.println("========================"); sum++; } else{ f=false; System.out.println("========================"); System.out.println(" 没什么大不了,继续努力 "); System.out.println("========================"); sum1--; System.out.println(cx); answer = in.nextInt(); if (d1==answer) { f=true; System.out.println("=========================="); System.out.println(" 答案正确继续努力 "); System.out.println("=========================="); sum++; } } } System.out.println("--------------------------"); System.out.println(" 正确题目得分为: "); System.out.println(sum); System.out.println("--------------------------"); System.out.println(" 错误题目得分为: "); System.out.println(sum1); System.out.println("--------------------------"); d2=sum+sum1; System.out.println(" 最终得分为: "); System.out.println(sum+"+"+sum1+"= "+d2); System.out.println("--------------------------"); } /*public int d2(int sum,int sum1){ int d2=sum-sum1; return d2;*/ } }
运行结果:

PSP对照表:
|
PSP2.1 |
任务内容 |
计划共完成需要的时间(min) |
实际完成需要的时间(min)
|
|
Planning |
计划 |
30 |
25 |
|
· Estimate |
· 估计这个任务需要多少时间,并规划大致工作步骤 |
30 |
25 |
|
Development |
开发 |
465 |
579 |
|
· Analysis |
·需求分析 (包括学习新技术) |
20 |
30 |
|
· Design Spec |
· 生成设计文档 |
10 |
8 |
|
· Design Review |
· 设计复审 (和同事审核设计文档) |
10 |
10 |
|
· Coding Standard |
·代码规范 (为目前的开发制定合适的规范) |
10 |
15 |
|
· Design |
·具体设计 |
20 |
22 |
|
· Coding |
·具体编码 |
280 |
320 |
|
· Code Review |
· 代码复审 |
100 |
150 |
|
· Test |
· 测试(自我测试,修改代码,提交修改) |
20 |
24 |
|
Reporting |
报告 |
19 |
22 |
|
· Test Report |
·测试报告 |
8 |
15 |
|
· Size Measurement |
·计算工作量 |
5 |
3 |
|
· Postmortem & Process Improvement Plan |
·事后总结 ,并提出过程改进计划 |
6 |
4 |
总结:开始的时候没有头绪,百度和看了别人的代码才开始写,具体编码和代码复审耗时比较多。编码的估计和实际的时间差别比较大。
浙公网安备 33010602011771号