小学生口算题卡系统——计应193第四小组王婕
一、任务
1.随机产生一组算题,产生算式,剔除不够减,循环
2.显示一组算题,同步计时(秒)
3.显示对错,统计正确率,统计时间
二、开发过程
1.用户故事
作为一名一年级学生的家长,我希望制作出一个出题软件,完成100以内的正整数的加减法随机产生
2.生成设计文档
3.设计复审
4.代码规范
5.具体设计
设计用户名和密码,登陆后通过选择来做加减法的算题,退出后能得到正确的题数,正确率和时间
6.具体编码
package cn.edu.hnzj.com;
import java.util.Date;
import java.util.Scanner;
public class Student {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String name = "wj";
int password = 123456789;
int num1 = 0;// 总题数
int num2 = 0;// 对题数
double acc = 0;// 正确率
int time;// 所用时间
System.out.println("========欢迎使用小学生口算题卡系统==========");
System.out.println("请输入用户名:");
String username = input.nextLine();
System.out.println("请输入密码:");
int pass = input.nextInt();
if (username.equals(name) && pass == password) {
System.out.println("恭喜你,登陆成功");
Date start = new Date(System.currentTimeMillis());
long starttime = start.getTime();
while (true) {
System.out.println("1,加法运算");
System.out.println("2,减法运算");
System.out.println("3,退出系统");
System.out.print("请输入你的选择");
int choice = input.nextInt();
if (choice == 1) {
for (int i = 1; i <= 10; i++) {
int x = (int) (Math.random() * 100);
int y = (int) (Math.random() * 100);
System.out.print(x + "+" + y + "=");
int z = input.nextInt();
if (z == (x + y)) {
System.out.println("恭喜你,回答正确");
num2++;
} else {
System.out.println("你的答案错误,正确答案为:" + x + "+" + y + "=" + (x + y));
}
num1++;
}
} else if (choice == 2) {
for (int i = 1; i <= 10;) {
int x = (int) (Math.random() * 100);
int y = (int) (Math.random() * 100);
if (x > y) {
System.out.print(x + "-" + y + "=");
int z = input.nextInt();
if (z == (x - y)) {
System.out.println("恭喜你,回答正确");
num2++;
} else {
System.out.println("答案错误,正确答案为:" + x + "-" + y + "=" + (x + y));
}
num1++;
i++;
}
}
}
else if (choice == 3) {
acc = (num2 * 1.0 / num1 * 1.0) * 100;
System.out.println("总题数:" + num1 + "答对的题数:" + num2 + "正确率:" + acc + "%");
Date end = new Date(System.currentTimeMillis());
long endtime = end.getTime();
time = (int) ((endtime - starttime) / (1000));
System.out.println("您的答题时间为:"+time+"秒");
System.out.println("用户已退出,欢迎下次使用");
System.exit(3);
}
else {
System.out.println("没有此选项,请重新选择");
}
}
} else {
System.out.println("用户名或密码输入错误");
}
}
}
7.代码复审
8.测试
9.总结
代码要规范,做好计划和复审
10.提出过程改进计划


|
小学生口算题卡系统 |
橙子(王婕)的所花时间百分比 |
预估时间 |
|
计划 |
||
|
明确相关需求和其他因素 |
6 |
3 |
|
开发 |
||
|
需求分析 |
7 |
6 |
|
生成设计文档 |
12 |
10 |
|
设计审复(和同事审核设计文档) |
11 |
10 |
|
代码规范(为目前开发指定合适的规范) |
3 |
3 |
|
具体设计 |
16 |
13 |
|
具体编码 |
24 |
22 |
|
代码复审 |
10 |
10 |
|
报告 |
||
|
测试报告 |
3 |
3 |
|
计算工作量 |
2 |
1 |
|
事后总结,并提出过程改进计划 |
2 |
1 |
浙公网安备 33010602011771号