本作业要求来自于:https://edu.cnblogs.com/campus/gzcc/GZCC-16SE1/homework/2213
我的GitHub地址:https://github.com/tianshizhao/tianshizhao/commits?author=tianshizhao
一、基本要求:
- 生成题目,单个题目最多不能超过4个运算符,操作数小于100。
- 用户可以输入答案
- 若用户输入答案正确,则提示正确;若答案错误,则提示错误,并要提示正确答案是多少。
二、扩展的方向
- 用户答题结束以后,程序可以显示用户答题所用的时间
- 用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数
- 程序可以出单个整数阶乘的题目:如:4!=24
- 程序可以设置答题时间,时间设置为整数,单位为秒,最大不能超过120秒,若超过了答题时间未答题,则提示:时间已到,不能答题。
- 程序可以设置皮肤功能,可以改变界面的颜色即可。
三 .时间记录表
|
PSP2.1 |
Personal Software Process Stages |
Time Senior Student(h) |
Time(h) |
|
Planning |
计划 |
2 |
2 |
|
· Estimate |
估计这个任务需要多少时间 |
35 |
50 |
|
Development |
开发 |
3 |
3 |
|
· Analysis |
需求分析 (包括学习新技术) |
0.2 |
0.3 |
|
· Design Spec |
生成设计文档 |
0.5 |
0.5 |
|
· Design Review |
设计复审 |
0.5 |
0.5 |
|
· Coding Standard |
代码规范 |
0.5 |
1.5 |
|
· Design |
具体设计 |
2.8 |
3.7 |
|
· Coding |
具体编码 |
5 |
5 |
|
· Code Review |
代码复审 |
3 |
4 |
|
· Test |
测试(自我测试,修改代码,提交修改) |
1 |
1 |
|
Reporting |
报告 |
0 |
0 |
|
Test Report |
测试报告 |
1 |
2 |
|
·workload |
计算工作量 |
10 |
10 |
|
·correction |
并提出过程改进计划 |
1 |
1 |
四 结对过程
1.结对成员:姓名:田仕钊 201606120041 博客园地址:https://www.cnblogs.com/tianshizhao/
姓名:张志涛 201606120045 博客园地址:https://www.cnblogs.com/pang0722/
2.开发环境:idea
3.分工
我:
- 程序可以出单个整数阶乘的题目:如:4!=24
- 程序可以设置答题时间,时间设置为整数,单位为秒,最大不能超过120秒,若超过了答题时间未答题,则提示:时间已到,不能答题。
- 程序可以设置皮肤功能,可以改变界面的颜色即可。
张志涛:
- 用户答题结束以后,程序可以显示用户答题所用的时间
- 用户可以选择出题的个数(最多不能超过5个题目),答题结束可以显示用户答错的题目个数和答对的题目个数
4.结对学习照片:

五 部分代码:
程序部分代码:
1.
private void jiecheng()
{
Random random = new Random();
int a=random.nextInt(10);
n.setText(a+"!");
sum =1;
for(int i=1;i<=a;i++)
{
sum = sum *i;
}
}
2.更改界面背景
public void actionPerformed(ActionEvent e{
if(e.getSource()== button4)
{
if (colorchange==true) {
G1.setBackground(Color.BLACK);
G2.setBackground(Color.BLACK);
colorchange=false;
}
else
{
G1.setBackground(Color.white);
G2.setBackground(Color.white);
colorchange=true;
}
}
六 实验截图



七 总结感悟
前一次作业是用C语言做的,做一些界面及按钮难度很大,导致刚开始下手做的时候浪费很多时间,后来只能改成java来实现功能,从头开始,经过几晚的奋战,最后总算完成,让我进一步了解了java框架设计,怎么添加按钮、怎么添加内容及文本框、如何实现鼠标点击时间更改界面背景,如何实现时间的设置,太久没有这么尽心学习java,这次的作业也进一步加深了我java的知识。