zoukankan      html  css  js  c++  java
  • 2020.10.5

    二柱子

      1 import java.util.*;
      2 public class math{
      3     static int d;//出题个数
      4     static int e;//操作数个数
      5     static int f;//操作数取值范围
      6     static int u=0;//错题个数;
      7     static int[] D=new int[100];//随机数
      8     static int[] C=new int[100];//运算法则
      9     static int[] M=new int[100];//错误的随机数
     10     static int[] F=new int[100];//错误的运算法则
     11     public static void main(String[] args) {
     12         Scanner con=new Scanner(System.in);
     13         System.out.println("请输入出题个数,操作数个数,操作数取值范围");
     14         d=con.nextInt();
     15         e=con.nextInt();
     16         f=con.nextInt();
     17         random();
     18         chuti();
     19         mistake();
     20         
     21     }
     22     public static int panduan(int a[],int i) {//判断重复
     23         int f=0;
     24         for(int j=0;j<i;j++) {
     25             for(int k=0;k<i;k++) {
     26                 if(a[i]==a[k])
     27                   f=1;
     28             }
     29           }
     30         return f;
     31     }
     32     public static void chuti() {//出题
     33         int z;
     34         int f;
     35         u=0;
     36         int w=0;
     37         int q=0;
     38         int mis=0;
     39         int g=0;
     40         Scanner con=new Scanner(System.in);
     41         for(int i=0;i<d;i++) {
     42         int result=0;
     43         C[i]=(int)(Math.random()*4+1);
     44         //f=panduan(a,i);
     45         //if(f==1) continue;
     46         switch(C[i]) {
     47           case 1:{
     48               for(w=0;w<e;w++) {
     49                   result+=D[w+q];
     50                 if(w==(e-1)) {
     51                     System.out.print(D[w+q]+"="); 
     52                     break;
     53                 }
     54                 System.out.print(D[w+q]+"+");
     55               }
     56               z=con.nextInt();
     57               if(z==result)  System.out.println("答案正确");
     58               else {
     59                   mis++; 
     60                   System.out.println("答案错误");
     61                   for(w=0;w<e;w++) {
     62                       M[g]=D[w+q];
     63                       F[u]=1;
     64                       g++;
     65                   }
     66                   u++;
     67               }
     68               q+=e;
     69               break;
     70           }
     71           case 2:{
     72               for(w=0;w<e;w++) {
     73                   result=D[q];
     74                   result-=D[w+q];
     75                     if(w==(e-1)) {
     76                         System.out.print(D[w+q]+"="); 
     77                         break;
     78                     }
     79                     System.out.print(D[w+q]+"-");
     80                   }
     81                   z=con.nextInt();
     82                   if(z==result)  System.out.println("答案正确");
     83                   else {
     84                       mis++; 
     85                       System.out.println("答案错误");
     86                       for(w=0;w<e;w++) {
     87                           M[g]=D[w+q];
     88                           F[u]=2;
     89                           g++;
     90                       }
     91                       u++;
     92                   }
     93                   q+=e;
     94                   break;
     95           }
     96           case 3:{
     97               for(w=0;w<e;w++) {
     98                   result=D[q];
     99                   result*=D[w+q];
    100                     if(w==(e-1)) {
    101                         System.out.print(D[w+q]+"="); 
    102                         break;
    103                     }
    104                     System.out.print(D[w+q]+"*");
    105                   }
    106                   z=con.nextInt();
    107                   if(z==result)  System.out.println("答案正确");
    108                   else {
    109                       mis++; 
    110                       System.out.println("答案错误");
    111                       for(w=0;w<e;w++) {
    112                           M[g]=D[w+q];
    113                           F[u]=3;
    114                           g++;
    115                       }
    116                       u++;
    117                   }
    118                   q+=e;
    119                   break;
    120           }
    121           case 4:{
    122               for(w=0;w<e;w++) {
    123                   result=D[q];
    124                   result/=D[w+q];
    125                     if(w==(e-1)) {
    126                         System.out.print(D[w+q]+"="); 
    127                         break;
    128                     }
    129                     System.out.print(D[w+q]+"÷");
    130                   }
    131                   z=con.nextInt();
    132                   if(z==result)  System.out.println("答案正确");
    133                   else {
    134                       mis++; 
    135                       System.out.println("答案错误");
    136                       for(w=0;w<e;w++) {
    137                           M[g]=D[w+q];
    138                           F[u]=4;
    139                           g++;
    140                       }
    141                       u++;
    142                   }
    143                   q+=e;
    144                   break;
    145           }
    146           }
    147     }
    148         System.out.println("本次答题共做"+d+"道题,错误"+mis+"道,错误率为:"+(100/d)*mis+"%");
    149     }
    150 
    151     public static void random() {//生成随机数
    152         for(int i=0;i<(d*e);i++) {
    153              D[i]=(int)(Math.random()*f+1);
    154          }
    155       }
    156    public static void mistake() {
    157      Scanner con=new Scanner(System.in);
    158      int d=0;
    159      int mis=0;
    160      int q=0;
    161      int j=0;
    162      System.out.println("错题重做");
    163      for(int i=0;i<u;i++) {
    164      int result=0;
    165      switch(F[i]) {
    166      case 1:{
    167          for(j=0;j<e;j++) {
    168              result+=M[j+q];
    169              if(j==e-1) {
    170                 System.out.print(M[j+q]+"="); 
    171                 break;
    172              }
    173              System.out.print(M[j+q]+"+");
    174          }
    175              q+=e;
    176              d=con.nextInt();
    177              if(d==result)  System.out.println("答案正确");
    178              else {
    179                   mis++; 
    180                   System.out.println("答案错误");
    181          }
    182         break;
    183      }
    184      case 2:{
    185          for(j=0;j<e;j++) {
    186              result=M[q];
    187              result-=M[j+q];
    188              if(j==e-1) {
    189                 System.out.print(M[j+q]+"="); 
    190                 break;
    191              }
    192              System.out.print(M[j+q]+"-");
    193          }
    194              q+=e;
    195              d=con.nextInt();
    196              if(d==result)  System.out.println("答案正确");
    197               else {
    198                   mis++; 
    199                   System.out.println("答案错误");
    200          }
    201         break;
    202      }
    203      case 3:{
    204          for(j=0;j<e;j++) {
    205              result=M[q];
    206              result*=M[j+q];
    207              if(j==e-1) {
    208                 System.out.print(M[j+q]+"="); 
    209                 break;
    210              }
    211              System.out.print(M[j+q]+"*");
    212          }
    213              q+=e;
    214              d=con.nextInt();
    215              if(d==result)  System.out.println("答案正确");
    216               else {
    217                   mis++; 
    218                   System.out.println("答案错误");
    219          }
    220         break;
    221      }
    222      case 4:{
    223          for(j=0;j<e;j++) {
    224              result=M[q];
    225              result/=M[j+q];
    226              if(j==e-1) {
    227                 System.out.print(M[j+q]+"="); 
    228                 break;
    229              }
    230              System.out.print(M[j+q]+"÷");
    231          }
    232              q+=e;
    233              d=con.nextInt();
    234              if(d==result)  System.out.println("答案正确");
    235               else {
    236                   mis++; 
    237                   System.out.println("答案错误");
    238           
    239          }
    240         break;
    241      }
    242      }
    243    }
    244      System.out.println("错题重做中共错题"+mis+"道");
    245 }
    246 }

  • 相关阅读:
    MVC模式和三层架构的区别
    浅谈MVC3自定义分页
    Jquery进度条插件 Progress Bar
    浅谈 MVC3 WebMail 发送邮件
    LINQ orderby 排序妙用
    mvc3 razor视图下 显示字符串形式的html
    Asp.Net MVC3 让你疯狂的5个理由
    4月8日作业 代码审核复查
    几个js处理时间函数
    看看下面JavaScript代码输出什么?
  • 原文地址:https://www.cnblogs.com/Nojava/p/13772129.html
Copyright © 2011-2022 走看看