计划:随机生成四则运算公式
开发:
package Test;
import java.util.ArrayList;
import java.util.List;
import javax.script.ScriptEngine;
import javax.script.ScriptEngineManager;
import javax.script.ScriptException;
public class Get {
List<Integer> number = new ArrayList<Integer>();
String[] symbol= {"+","-","*","/"};
int geshu;
StringBuffer bufferString = new StringBuffer();
public void getFormula() throws ScriptException {
geshu = (int) (Math.random()*8+2);
for(int i = 0;i<geshu+1;i++) {
number.add((int) (Math.random()*100+1));
}
bufferString.append(number.remove(0));
for(int j = 0;j<number.size();j++) {
int index=(int) (Math.random()*4);
bufferString.append(symbol[index]);
bufferString.append(number.get(j));
if(j==number.size()-1) {
bufferString.append("="+getResult(bufferString));
number.clear();
System.out.println(bufferString);
bufferString.delete(0,bufferString.length());
}
}
}
public Object getResult(StringBuffer bufferString) throws ScriptException {
ScriptEngineManager manager = new ScriptEngineManager();
ScriptEngine engine = manager.getEngineByName("javascript");
String s = new String(bufferString);
Object result =engine.eval(s);
return result;
}
}
PSP阶段 |
实际花费时间百分比 |
估计花费时间百分比 |
计划 |
3 |
2 |
明确需求和其他相关因素,估计每个阶段的时间成本 |
3 |
2 |
开发 |
80 |
90 |
需求分析 |
6 |
4 |
生成设计文档 |
4 |
5 |
设计复审(和同事审核设计文档) |
4 |
5 |
代码规范(为目前的开发制定合适的规范) |
2 |
3 |
具体设计 |
15 |
20 |
具体代码 |
35 |
35 |
代码复审 |
12 |
8 |
测试(自测,修改代码,提交修改) |
12 |
10 |
报告 |
7 |
8 |
测试报告 |
3 |
3 |
计算工作量 |
2 |
2 |
事后总结,并提出过程改进计划 |
2 |
3 |