结对编程具体操作
1.题目描述:
面向小学生,随机生成30个100以内的四则运算,并且用户可以录入结果,检查用户录入的结果是否是正确的。
学习进度条:
| 点滴成就 | 学习时间 | 新编写代码行数 | 博客量(篇) | 学习知识点 |
| 第一周 | 10小时 | 0 | 0 | 了解软件工程 |
| 第二周 | 10小时 | 0 | 1 | 项目开题 |
| 第三周 | 15小时 | 0 | 1 | 开通博客、开展项目调查 |
| 第四周 | 20小时 | 256 | 1 | 需求文档、用例图、代码规范 |
| 第五周 | 15小时 | 0 | 0 | 软件工程 |
| 第六周 | 20小时 | 400 | 0 | 编译原理、软件工程详细设计 |
| 第七周 | 18小时 | 150 | 1 | 软件工程 |
1. 结对编程对象:蒋怡 2013110418
对方博客地址:http://www.cnblogs.com/dendai-05/
双方贡献比例: 1:1
照片: 
2.代码:
import java.util.Random;
import java.util.Scanner;
public class Pro {
private static Scanner input=new Scanner(System.in);
public static void main(String[] agrs){
int choose;
int right=0;
int first=0;
int last=0;
int[] error=new int[30];
int[] errorId=new int[30];
int oper,j=0,k=0;
int result1=0;
int result2=0;
Random random=new Random();
while(true){
System.out.print("是否进行运算: 1.是 2.否\n");
choose=input.nextInt();
if(choose==1){
for(int i=0;i<30;i++){
Scanner input1=new Scanner(System.in);
first=random.nextInt(100);
last=random.nextInt(100);
oper=random.nextInt(4);
switch(oper){
case 0:
{
System.out.print(i+1+". "+first+"+"+last+"=");
result1=input1.nextInt();
result2=first+last;
if(result1==result2)
right++;
else{
error[j]=result2;
errorId[k]=i+1;
j++;
k++;
}
break;
}
case 1:
{
while(first<last){
first=random.nextInt(100);
last=random.nextInt(100);
}
System.out.print(i+1+". "+first+"-"+last+"=");
result1=input1.nextInt();
result2=first-last;
if(result1==result2)
right++;
else{
error[j]=result2;
errorId[k]=i+1;
j++;
k++;
}
break;
}
case 2:
{
System.out.print(i+1+". "+first+"*"+last+"=");
result1=input1.nextInt();
result2=first*last;
if(result1==result2)
right++;
else{
error[j]=result2;
errorId[k]=i+1;
j++;
k++;
}
break;
}
case 3:
{
if(last==0){
last=random.nextInt(99)+1;
}
while(first%last!=0){
first=random.nextInt(100);
last=random.nextInt(99)+1;
}
System.out.print(i+1+". "+first+"/"+last+"=");
result1=input1.nextInt();
result2=first/last;
if(result1==result2)
right++;
else{
error[j]=result2;
errorId[k]=i+1;
j++;
k++;
}
break;
}
}
}
System.out.print("你一共答对了"+right+"道题\n"+"其中错误的题和其正确答案为:\n");
for(int m=0;m<j;m++){
System.out.print(errorId[m]+". "+error[m]+" ");
System.out.print("\n");
}
}
}
}
}
3.结果显示:



浙公网安备 33010602011771号