四则运算出题器

题目要求:编译一个能出四则运算题目的代码,具体要求为:1、所出题目不能重复2、可以输入任意题目数量和打印方式3、要求乘法题目计算结果为两位数,除法题目计算结果为整数,减法题目计算结果为正数。

解题关键点及思路:这道题目的关键点在于所出题目不能出现重复,所以在解题中用到了数组,通过对每一次出题后存储数据的判断,来决定是否继续执行下面的循环语句,最终实现所出的题目不重复。

代码:

 1 package  SIZEYUNSUAN;
 2 import java.util.Random;
 3 import java.util.Scanner;
 4 public class Num {
 5     static  Scanner sc=new Scanner(System.in);
 6     public static void main(String[] args) {
 7             boolean m4;
 8             int k=0;
 9             Random a=new Random();
10             System.out.println("请输入出题数目:");
11             int n1=sc.nextInt();
12             System.out.println("请输入打印方式:");
13             int n2=sc.nextInt();
14             int m1[]=new int[100000];
15             int m2[]=new int[100000];
16             int m3[]=new int[100000];
17             for(int i=0;i<n1;) {
18                 m4=false;
19                 int c1=a.nextInt(100);
20                 int c2=a.nextInt(100);
21                 int c3=a.nextInt(4);
22                   for(int j=0;j<k;j++) {
23                     if(c1==m1[j]&&c2==m2[j]&&c3==m3[j]) {
24                        m4=true;
25                        break;
26                     }
27                     }
28             if(m4)
29                 continue;
30             if(c3==0) {
31                 System.out.print((i+1)+"."+c1+"+"+c2+"= ");
32                 i++;
33             }
34             if(c3==1&&c1>c2) {
35                 System.out.print((i+1)+"."+c1+"-"+c2+"= ");
36                 i++;
37             }
38             if(c3==1&&c1<=c2){
39                 System.out.print((i+1)+"."+c2+"-"+c1+"= ");
40                 i++;
41             }
42             
43             if(c3==2) {
44                 if(c1*c2<100) {
45                 System.out.print((i+1)+"."+c1+"*"+c2+"= ");
46                 i++;
47             }
48                 else
49                     continue;
50             }
51             if(c3==3) {
52                 if(((c2!=0)&&(c1%c2)==0)) {
53                 System.out.print((i+1)+"."+c1+"/"+c2+"= ");
54                 i++;
55                }
56                 else
57                     continue;
58             }
59             m1[k]=c1;
60             m2[k]=c2;
61             m3[k]=c3;
62             k=k+1;
63             if(i%n2==0) {
64                     System.out.println("");
65             }    
66             }
67 }
68 }

猜你喜欢

转载自www.cnblogs.com/MoooJL/p/11545126.html