zoukankan      html  css  js  c++  java
  • 第五次作业:封装与测试

    
    
      1 1 import java.awt.Dimension;
      2   2 import java.awt.FlowLayout;
      3   3 import java.awt.GridLayout;
      4   4 import java.awt.Toolkit;
      5   5 import java.awt.event.ActionEvent;
      6   6 import java.awt.event.ActionListener;
      7   7 
      8   8 import javax.swing.JButton;
      9   9 import javax.swing.JFrame;
     10  10 import javax.swing.JLabel;
     11  11 import javax.swing.JOptionPane;
     12  12 import javax.swing.JPanel;
     13  13 import javax.swing.JTextField;
     14  14 import javax.swing.Timer;
     15  15 
     16  16 public class Jiemian extends JFrame implements  ActionListener{
     17  17 
     18  18     /**
     19  19      * @param args
     20  20      */
     21  21     Jisuanlei JISUAN=new Jisuanlei();
     22  22     private Timer tmr;
     23  23     String result;
     24  24     int dadui=0;
     25  25     JLabel L1=new JLabel("设置时间:");
     26  26     JLabel L2=new JLabel("实际用时:");
     27  27     JLabel L3=new JLabel("输入你想要的题数(最多1--5):");
     28  28     JLabel L4=new JLabel("你答对的题目数有:");
     29  29     JLabel L5=new JLabel("温馨提示:");
     30  30     JLabel L6=new JLabel("=");
     31  31     JLabel Q1=new JLabel("                      ");
     32  32     JLabel Q2=new JLabel("            ");
     33  33     JLabel Q3=new JLabel("                                            ");
     34  34     JLabel Q4=new JLabel("                          ");
     35  35     JTextField T1=new JTextField(10);
     36  36     JTextField T2=new JTextField(10);
     37  37     JTextField T3=new JTextField(3);
     38  38     JTextField T4=new JTextField(3);
     39  39     JTextField T5=new JTextField(3);
     40  40     JTextField T6=new JTextField(3);
     41  41     JTextField T7=new JTextField(3);
     42  42     JTextField T8=new JTextField(20);
     43  43     JTextField T9=new JTextField(3);
     44  44     
     45  45     JButton B1=new JButton("确定");
     46  46     JButton B5=new JButton("确定");
     47  47     JButton B2=new JButton("出题");
     48  48     JButton B3=new JButton("确定答案!");
     49  49     JButton B4=new JButton("下一题!");
     50  50     
     51  51     
     52  52     
     53  53     
     54  54     
     55  55     public Jiemian(){
     56  56         super("CHENGXU");
     57  57     this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
     58  58     this.setPreferredSize(new Dimension(300,600));
     59  59     this.getContentPane();
     60  60     this.pack();
     61  61     FlowLayout layout = new FlowLayout(FlowLayout.CENTER,5,20);
     62  62     this.setLayout(layout);
     63  63     this.add(L1);this.add(T1);this.add(B1);this.add(L2);this.add(T2);this.add(Q1);
     64  64     this.add(L3);this.add(T3);this.add(B5);
     65  65     this.add(B2);this.add(B2);
     66  66     this.add(T4);this.add(T5);this.add(T6);this.add(L6);this.add(T7);
     67  67     this.add(B3);this.add(B4);this.add(Q2);
     68  68     this.add(L5);this.add(T8);
     69  69     this.add(L4);this.add(T9);this.add(Q3);
     70  70     
     71  71      B1.addActionListener(this);
     72  72     
     73  73     B2.addActionListener(this);
     74  74  
     75  75     B3.addActionListener(this);
     76  76     Timer tmr = new Timer(1000, this);//间隔1秒
     77  77     this.tmr = tmr;//添加时间
     78  78    B4.addActionListener(this);
     79  79 
     80  80    B5.addActionListener(this);
     81  81     
     82  82     
     83  83     int width = Toolkit.getDefaultToolkit().getScreenSize().width;  //把框在屏幕中间显示
     84  84     int height = Toolkit.getDefaultToolkit().getScreenSize().height;
     85  85     this.setLocation(width / 2 - 300, height / 2 - 200);
     86  86     
     87  87     this.setVisible(true);
     88  88     this.setResizable(false);
     89  89     
     90  90 
     91  91 
     92  92     }
     93  93     
     94  94     
     95  95     
     96  96     
     97  97      public void actionPerformed(ActionEvent e)
     98  98         {
     99  99             if(e.getSource()==B1)//当获取的资源是按钮1时
    100 100             {
    101 101                 try
    102 102                 {
    103 103                     T2.setText(String.valueOf(T1.getText()));//在显示时间框里显示以获取的时间
    104 104                 
    105 105                 int n1=120,n2=5;
    106 106                 if(n1<(Integer.parseInt(T2.getText())))
    107 107                 {//当设置时间超过120秒,弹出对话框
    108 108                     JOptionPane.showMessageDialog(null, "时间不能超过120秒!");
    109 109                     this.setVisible(false);
    110 110                 }
    111 111                 if(n2<(Integer.parseInt(T3.getText())))
    112 112                 {//当选择题目个数超过5个,弹出对话框
    113 113                     JOptionPane.showMessageDialog(null, "选择题数不能超过五个!");
    114 114                     this.setVisible(false);
    115 115                 }
    116 116                 tmr.start();//开始计时
    117 117                 }
    118 118                 catch(NullPointerException o)
    119 119                 {
    120 120 
    121 121                 }
    122 122                 //suijishu();//调用产生随机数题目
    123 123             //    startTime= System.currentTimeMillis(); //获取开始时间
    124 124                 T2.setText(String.valueOf(T1.getText()));
    125 125             }
    126 126             else{
    127 127                 int m = Integer.parseInt(T2.getText());
    128 128                 m--;
    129 129                 T2.setText("" + m);
    130 130                 if (m <= 0) 
    131 131                 {
    132 132                      tmr.stop();
    133 133                      JOptionPane.showMessageDialog(null, "超出答题时间!");
    134 134                      this.setVisible(false);
    135 135                 }
    136 136             }    
    137 137             
    138 138             
    139 139             if(e.getSource()==B5)//当获取的资源是按钮1时
    140 140             {
    141 141                 int num=(int) Double.parseDouble(T3.getText());
    142 142                 System.out.println(num);
    143 143                 
    144 144                 if(5<(Integer.parseInt(T3.getText())))
    145 145                 {//当选择题目个数超过5个,弹出对话框
    146 146                     JOptionPane.showMessageDialog(null, "选择题数不能超过五个!");
    147 147                     this.setVisible(false);
    148 148                 }
    149 149                 
    150 150             }
    151 151             
    152 152             
    153 153             
    154 154             
    155 155             if(e.getSource()==B2)//当获取的资源是按钮1时
    156 156             {
    157 157                 int fuhao1=(int) (Math.random()*11/3+1);
    158 158                 switch (fuhao1)
    159 159                 {
    160 160                 case 1:
    161 161                 {
    162 162                     int leixing=(int) (Math.random()*8/3+1);//1表示整数,2表示分数,3表示阶乘;
    163 163                     switch(leixing)
    164 164                     {
    165 165                     case 1:
    166 166                     {
    167 167                         /*int shu1=(int) (Math.random()*10+1);
    168 168                         int shu2=(int) (Math.random()*10+1);
    169 169                         T4.setText(String.valueOf(shu1));
    170 170                         T6.setText(String.valueOf(shu2));
    171 171                         T5.setText(String.valueOf("+"));
    172 172                         result=String.valueOf(shu1+shu2);*/
    173 173                         Jisuanlei.Jiahaozhengshuyunsuan( T4,T6, T5, result);
    174 174                         if(e.getSource()==B3)
    175 175                         {
    176 176                             if(result.equals(T7.getText()))
    177 177                             {
    178 178                                 T8.setText("答案正确!");
    179 179                             }
    180 180                             else
    181 181                                 T8.setText("答案错误!正确答案是"+result);
    182 182                             dadui++;
    183 183                         }
    184 184                         
    185 185                     }break;
    186 186                     case 2:
    187 187                     {
    188 188                         /*int shu1=(int) (Math.random()*10+1);
    189 189                         int shu2=(int) (Math.random()*10+1);
    190 190                         int shu3=(int) (Math.random()*10+1);
    191 191                         int shu4=(int) (Math.random()*10+1);
    192 192                         if(shu1>shu2)
    193 193                         {
    194 194                             int temp=shu1;
    195 195                             shu1=shu2;
    196 196                             shu2=temp;
    197 197                         }
    198 198                         if(shu3>shu4)
    199 199                         {
    200 200                             int temp=shu3;
    201 201                             shu3=shu4;
    202 202                             shu4=temp;
    203 203                         }
    204 204                         
    205 205                         T4.setText(String.valueOf(shu1+"/"+shu2));
    206 206                         T6.setText(String.valueOf(shu3+"/"+shu4));
    207 207                         T5.setText(String.valueOf("+"));
    208 208                         int res1=(shu1*shu4)+(shu2*shu3);
    209 209                         int res2=shu2*shu4;
    210 210                         int pan=0;
    211 211                         if(res1>res2)
    212 212                         {
    213 213                              pan=res2;
    214 214                         }
    215 215                         else
    216 216                         {
    217 217                              pan=res1;
    218 218                         }
    219 219                         for(int i=pan;i>0;i--)
    220 220                         {
    221 221                             if(res1%pan==0&&res2%pan==0)
    222 222                             {
    223 223                                 res1=res1/pan;
    224 224                                 res2=res2/pan;
    225 225                                 if(res1>res2)
    226 226                                 {
    227 227                                      pan=res2;
    228 228                                 }
    229 229                                 else
    230 230                                 {
    231 231                                      pan=res1;
    232 232                                 }
    233 233                                 i=pan;
    234 234                             }
    235 235                         }
    236 236                         
    237 237                         result=String.valueOf(shu1+"/"+shu2);*/
    238 238                         Jisuanlei.Jiahaofenshuyunsuan( T4,T6, T5, result);
    239 239                         if(e.getSource()==B3)
    240 240                         {
    241 241                             if(result.equals(T7.getText()))
    242 242                             {
    243 243                                 T8.setText("答案正确!");
    244 244                             }
    245 245                             else
    246 246                                 T8.setText("答案错误!正确答案是"+result);
    247 247                             dadui++;
    248 248                         }
    249 249                     }break;
    250 250                     case 3:
    251 251                     {
    252 252                         
    253 253                         /*int shu1=(int) (Math.random()*9+1);
    254 254                         int res1=shu1;
    255 255                         T6.setText(String.valueOf("!"+shu1));
    256 256                         for(int i=shu1-1;i>0;i--)
    257 257                         {
    258 258                              res1=res1*i;
    259 259                         }
    260 260                         result=String.valueOf(res1);*/
    261 261                         Jisuanlei.Jiahaojieshengyunsuan( T4,T6, T5, result);
    262 262                         if(e.getSource()==B3)
    263 263                         {
    264 264                             if(result.equals(T7.getText()))
    265 265                             {
    266 266                                 T8.setText("答案正确!");
    267 267                             }
    268 268                             else
    269 269                                 T8.setText("答案错误!正确答案是"+result);
    270 270                             dadui++;
    271 271                         }
    272 272                     }break;
    273 273                     
    274 274                     }
    275 275                     
    276 276                 }break;
    277 277                 case 2:
    278 278                 {
    279 279                     int leixing=(int) (Math.random()*8/3+1);//1表示整数,2表示分数,3表示阶乘;
    280 280                     switch(leixing)
    281 281                     {
    282 282                     case 1:
    283 283                     {
    284 284                         /*int shu1=(int) (Math.random()*10+1);
    285 285                         int shu2=(int) (Math.random()*10+1);
    286 286                         T4.setText(String.valueOf(shu1));
    287 287                         T6.setText(String.valueOf(shu2));
    288 288                         T5.setText(String.valueOf("-"));
    289 289                         result=String.valueOf(shu1-shu2);*/
    290 290                         Jisuanlei.Jianhaozhengshuyunsuan(T4,T6,T5,result);
    291 291                         if(e.getSource()==B3)
    292 292                         {
    293 293                             if(result.equals(T7.getText()))
    294 294                             {
    295 295                                 T8.setText("答案正确!");
    296 296                             }
    297 297                             else
    298 298                                 T8.setText("答案错误!正确答案是"+result);
    299 299                             dadui++;
    300 300                         }
    301 301                     }break;
    302 302                     case 2:
    303 303                     {
    304 304                         /*int shu1=(int) (Math.random()*10+1);
    305 305                         int shu2=(int) (Math.random()*10+1);
    306 306                         int shu3=(int) (Math.random()*10+1);
    307 307                         int shu4=(int) (Math.random()*10+1);
    308 308                         if(shu1>shu2)
    309 309                         {
    310 310                             int temp=shu1;
    311 311                             shu1=shu2;
    312 312                             shu2=temp;
    313 313                         }
    314 314                         if(shu3>shu4)
    315 315                         {
    316 316                             int temp=shu3;
    317 317                             shu3=shu4;
    318 318                             shu4=temp;
    319 319                         }
    320 320                         
    321 321                         T4.setText(String.valueOf(shu1+"/"+shu2));
    322 322                         T6.setText(String.valueOf(shu3+"/"+shu4));
    323 323                         T5.setText(String.valueOf("-"));
    324 324                         int res1=(shu1*shu4)-(shu2*shu3);
    325 325                         int res2=shu2*shu4;
    326 326                         int pan=0;
    327 327                         if(res1>res2)
    328 328                         {
    329 329                              pan=res2;
    330 330                         }
    331 331                         else
    332 332                         {
    333 333                              pan=res1;
    334 334                         }
    335 335                         for(int i=pan;i>0;i--)
    336 336                         {
    337 337                             if(res1%pan==0&&res2%pan==0)
    338 338                             {
    339 339                                 res1=res1/pan;
    340 340                                 res2=res2/pan;
    341 341                                 if(res1>res2)
    342 342                                 {
    343 343                                      pan=res2;
    344 344                                 }
    345 345                                 else
    346 346                                 {
    347 347                                      pan=res1;
    348 348                                 }
    349 349                                 i=pan;
    350 350                             }
    351 351                         }
    352 352                         
    353 353                         result=String.valueOf(shu1+"/"+shu2);*/
    354 354                         Jisuanlei.Jianhaofenshuyunsuan(T4,T6,T5,result);
    355 355                         if(e.getSource()==B3)
    356 356                         {
    357 357                             if(result.equals(T7.getText()))
    358 358                             {
    359 359                                 T8.setText("答案正确!");
    360 360                             }
    361 361                             else
    362 362                                 T8.setText("答案错误!正确答案是"+result);
    363 363                             dadui++;
    364 364                         }
    365 365                     }break;
    366 366                     case 3:
    367 367                     {
    368 368                         
    369 369                         /*int shu1=(int) (Math.random()*9+1);
    370 370                         int res1=shu1;
    371 371                         T6.setText(String.valueOf("!"+shu1));
    372 372                         for(int i=shu1-1;i>0;i--)
    373 373                         {
    374 374                              res1=res1*i;
    375 375                         }
    376 376                         result=String.valueOf(res1);*/
    377 377                         Jisuanlei.Jianhaofenshuyunsuan(T4,T6,T5,result);
    378 378                         if(e.getSource()==B3)
    379 379                         {
    380 380                             if(result.equals(T7.getText()))
    381 381                             {
    382 382                                 T8.setText("答案正确!");
    383 383                             }
    384 384                             else
    385 385                                 T8.setText("答案错误!正确答案是"+result);
    386 386                             dadui++;
    387 387                         }
    388 388                     }break;
    389 389                     
    390 390                     }
    391 391                     
    392 392                 }break;
    393 393                 case 3:
    394 394                 {
    395 395                     int leixing=(int) (Math.random()*8/3+1);//1表示整数,2表示分数,3表示阶乘;
    396 396                     switch(leixing)
    397 397                     {
    398 398                     case 1:
    399 399                     {
    400 400                         /*int shu1=(int) (Math.random()*10+1);
    401 401                         int shu2=(int) (Math.random()*10+1);
    402 402                         T4.setText(String.valueOf(shu1));
    403 403                         T6.setText(String.valueOf(shu2));
    404 404                         T5.setText(String.valueOf("*"));
    405 405                         result=String.valueOf(shu1*shu2);*/
    406 406                         Jisuanlei.shenghaozhengshuyunsuan(T4,T6,T5,result);
    407 407                         if(e.getSource()==B3)
    408 408                         {
    409 409                             if(result.equals(T7.getText()))
    410 410                             {
    411 411                                 T8.setText("答案正确!");
    412 412                             }
    413 413                             else
    414 414                                 T8.setText("答案错误!正确答案是"+result);
    415 415                             dadui++;
    416 416                         }
    417 417                     }break;
    418 418                     case 2:
    419 419                     {
    420 420                         /*int shu1=(int) (Math.random()*10+1);
    421 421                         int shu2=(int) (Math.random()*10+1);
    422 422                         int shu3=(int) (Math.random()*10+1);
    423 423                         int shu4=(int) (Math.random()*10+1);
    424 424                         if(shu1>shu2)
    425 425                         {
    426 426                             int temp=shu1;
    427 427                             shu1=shu2;
    428 428                             shu2=temp;
    429 429                         }
    430 430                         if(shu3>shu4)
    431 431                         {
    432 432                             int temp=shu3;
    433 433                             shu3=shu4;
    434 434                             shu4=temp;
    435 435                         }
    436 436                         
    437 437                         T4.setText(String.valueOf(shu1+"/"+shu2));
    438 438                         T6.setText(String.valueOf(shu4+"/"+shu3));
    439 439                         T5.setText(String.valueOf("*"));
    440 440                         int res1=(shu1)*(shu3);
    441 441                         int res2=shu2*shu4;
    442 442                         int pan=0;
    443 443                         if(res1>res2)
    444 444                         {
    445 445                              pan=res2;
    446 446                         }
    447 447                         else
    448 448                         {
    449 449                              pan=res1;
    450 450                         }
    451 451                         for(int i=pan;i>0;i--)
    452 452                         {
    453 453                             if(res1%pan==0&&res2%pan==0)
    454 454                             {
    455 455                                 res1=res1/pan;
    456 456                                 res2=res2/pan;
    457 457                                 if(res1>res2)
    458 458                                 {
    459 459                                      pan=res2;
    460 460                                 }
    461 461                                 else
    462 462                                 {
    463 463                                      pan=res1;
    464 464                                 }
    465 465                                 i=pan;
    466 466                             }
    467 467                         }
    468 468                         
    469 469                         result=String.valueOf(shu1+"/"+shu2);*/
    470 470                         Jisuanlei.shenghaofenshuyunsuan(T4,T6,T5,result);
    471 471                         if(e.getSource()==B3)
    472 472                         {
    473 473                             if(result.equals(T7.getText()))
    474 474                             {
    475 475                                 T8.setText("答案正确!");
    476 476                             }
    477 477                             else
    478 478                                 T8.setText("答案错误!正确答案是"+result);
    479 479                             dadui++;
    480 480                         }
    481 481                     }break;
    482 482                     case 3:
    483 483                     {
    484 484                         
    485 485                         /*int shu1=(int) (Math.random()*9+1);
    486 486                         int res1=shu1;
    487 487                         T6.setText(String.valueOf("!"+shu1));
    488 488                         for(int i=shu1-1;i>0;i--)
    489 489                         {
    490 490                              res1=res1*i;
    491 491                         }
    492 492                         result=String.valueOf(res1);*/
    493 493                         Jisuanlei.shenghaojieshengyunsuan(T4,T6,T5,result);
    494 494                         if(e.getSource()==B3)
    495 495                         {
    496 496                             if(result.equals(T7.getText()))
    497 497                             {
    498 498                                 T8.setText("答案正确!");
    499 499                             }
    500 500                             else
    501 501                                 T8.setText("答案错误!正确答案是"+result);
    502 502                             dadui++;
    503 503                         }
    504 504                     }break;
    505 505                     
    506 506                     }
    507 507                     
    508 508                 }break;
    509 509                 case 4:
    510 510                 {
    511 511                     int leixing=(int) (Math.random()*8/3+1);//1表示整数,2表示分数,3表示阶乘;
    512 512                     switch(leixing)
    513 513                     {
    514 514                     case 1:
    515 515                     {
    516 516                         /*int shu1=(int) (Math.random()*10+1);
    517 517                         int shu2=(int) (Math.random()*10+1);
    518 518                         T4.setText(String.valueOf(shu1));
    519 519                         T6.setText(String.valueOf(shu2));
    520 520                         T5.setText(String.valueOf("/"));
    521 521                         result=String.valueOf(shu1/shu2);*/
    522 522                         Jisuanlei.chuhaozhengshuyunsuan(T4,T6,T5,result);
    523 523                         if(e.getSource()==B3)
    524 524                         {
    525 525                             if(result.equals(T7.getText()))
    526 526                             {
    527 527                                 T8.setText("答案正确!");
    528 528                             }
    529 529                             else
    530 530                                 T8.setText("答案错误!正确答案是"+result);
    531 531                             dadui++;
    532 532                         }
    533 533                     }break;
    534 534                     case 2:
    535 535                     {
    536 536                         /*int shu1=(int) (Math.random()*10+1);
    537 537                         int shu2=(int) (Math.random()*10+1);
    538 538                         int shu3=(int) (Math.random()*10+1);
    539 539                         int shu4=(int) (Math.random()*10+1);
    540 540                         if(shu1>shu2)
    541 541                         {
    542 542                             int temp=shu1;
    543 543                             shu1=shu2;
    544 544                             shu2=temp;
    545 545                         }
    546 546                         if(shu3>shu4)
    547 547                         {
    548 548                             int temp=shu3;
    549 549                             shu3=shu4;
    550 550                             shu4=temp;
    551 551                         }
    552 552                         
    553 553                         T4.setText(String.valueOf(shu1+"/"+shu2));
    554 554                         T6.setText(String.valueOf(shu3+"/"+shu4));
    555 555                         T5.setText(String.valueOf("/"));
    556 556                         int res1=shu1*shu4;
    557 557                         int res2=shu2*shu3;
    558 558                         int pan=0;
    559 559                         if(res1>res2)
    560 560                         {
    561 561                              pan=res2;
    562 562                         }
    563 563                         else
    564 564                         {
    565 565                              pan=res1;
    566 566                         }
    567 567                         for(int i=pan;i>0;i--)
    568 568                         {
    569 569                             if(res1%pan==0&&res2%pan==0)
    570 570                             {
    571 571                                 res1=res1/pan;
    572 572                                 res2=res2/pan;
    573 573                                 if(res1>res2)
    574 574                                 {
    575 575                                      pan=res2;
    576 576                                 }
    577 577                                 else
    578 578                                 {
    579 579                                      pan=res1;
    580 580                                 }
    581 581                                 i=pan;
    582 582                             }
    583 583                         }
    584 584                         
    585 585                         result=String.valueOf(shu1+"/"+shu2);*/
    586 586                         Jisuanlei.chuhaofenshuyunsuan(T4,T6,T5,result);
    587 587                         if(e.getSource()==B3)
    588 588                         {
    589 589                             if(result.equals(T7.getText()))
    590 590                             {
    591 591                                 T8.setText("答案正确!");
    592 592                             }
    593 593                             else
    594 594                                 T8.setText("答案错误!正确答案是"+result);
    595 595                             dadui++;
    596 596                         }
    597 597                     }break;
    598 598                     case 3:
    599 599                     {
    600 600                         
    601 601                         /*int shu1=(int) (Math.random()*9+1);
    602 602                         int res1=shu1;
    603 603                         T6.setText(String.valueOf("!"+shu1));
    604 604                         for(int i=shu1-1;i>0;i--)
    605 605                         {
    606 606                              res1=res1*i;
    607 607                         }
    608 608                         result=String.valueOf(res1);*/
    609 609                         Jisuanlei.chuhaojieshengyunsuan(T4,T6,T5,result);
    610 610                         if(e.getSource()==B3)
    611 611                         {
    612 612                             if(result.equals(T7.getText()))
    613 613                             {
    614 614                                 T8.setText("答案正确!");
    615 615                             }
    616 616                             else
    617 617                                 T8.setText("答案错误!正确答案是"+result);
    618 618                             dadui++;
    619 619                         }
    620 620                     }break;
    621 621                     
    622 622                     }
    623 623                     
    624 624                 }break;
    625 625                 }
    626 626                 
    627 627             }
    628 628         
    629 629         
    630 630         
    631 631         }
    632 632      
    633 633     
    634 634     
    635 635     
    636 636     
    637 637     
    638 638     public static void main(String[] args) {
    639 639         // TODO Auto-generated method stub
    640 640         new Jiemian();
    641 641         
    642 642 
    643 643     }
    644 644 
    645 645 }
    主界面等程序代码
      1 1 import javax.swing.JButton;
      2   2 import javax.swing.JTextField;
      3   3 
      4   4 
      5   5 public class Jisuanlei {
      6   6 
      7   7     /**
      8   8      * @param args
      9   9      */
     10  10 /*    public static void main(String[] args) {
     11  11         // TODO Auto-generated method stub
     12  12         
     13  13 
     14  14     }
     15  15 */
     16  16     Jisuanlei (){};
     17  17      static void Jiahaozhengshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
     18  18         int shu1=(int) (Math.random()*10+1);
     19  19         int shu2=(int) (Math.random()*10+1);
     20  20         T4.setText(String.valueOf(shu1));
     21  21         T6.setText(String.valueOf(shu2));
     22  22         T5.setText(String.valueOf("+"));
     23  23         result=String.valueOf(shu1+shu2);
     24  24         
     25  25         
     26  26     }
     27  27     static void Jiahaofenshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
     28  28         int shu1=(int) (Math.random()*10+1);
     29  29         int shu2=(int) (Math.random()*10+1);
     30  30         int shu3=(int) (Math.random()*10+1);
     31  31         int shu4=(int) (Math.random()*10+1);
     32  32         if(shu1>shu2)
     33  33         {
     34  34             int temp=shu1;
     35  35             shu1=shu2;
     36  36             shu2=temp;
     37  37         }
     38  38         if(shu3>shu4)
     39  39         {
     40  40             int temp=shu3;
     41  41             shu3=shu4;
     42  42             shu4=temp;
     43  43         }
     44  44         
     45  45         T4.setText(String.valueOf(shu1+"/"+shu2));
     46  46         T6.setText(String.valueOf(shu3+"/"+shu4));
     47  47         T5.setText(String.valueOf("+"));
     48  48         int res1=(shu1*shu4)+(shu2*shu3);
     49  49         int res2=shu2*shu4;
     50  50         int pan=0;
     51  51         if(res1>res2)
     52  52         {
     53  53              pan=res2;
     54  54         }
     55  55         else
     56  56         {
     57  57              pan=res1;
     58  58         }
     59  59         for(int i=pan;i>0;i--)
     60  60         {
     61  61             if(res1%pan==0&&res2%pan==0)
     62  62             {
     63  63                 res1=res1/pan;
     64  64                 res2=res2/pan;
     65  65                 if(res1>res2)
     66  66                 {
     67  67                      pan=res2;
     68  68                 }
     69  69                 else
     70  70                 {
     71  71                      pan=res1;
     72  72                 }
     73  73                 i=pan;
     74  74             }
     75  75         }
     76  76         
     77  77         result=String.valueOf(shu1+"/"+shu2);
     78  78         
     79  79         
     80  80     }
     81  81     
     82  82     static void Jiahaojieshengyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
     83  83         int shu1=(int) (Math.random()*9+1);
     84  84         int res1=shu1;
     85  85         T6.setText(String.valueOf("!"+shu1));
     86  86         for(int i=shu1-1;i>0;i--)
     87  87         {
     88  88              res1=res1*i;
     89  89         }
     90  90         result=String.valueOf(res1);
     91  91     
     92  92     }
     93  93     
     94  94     static void Jianhaozhengshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
     95  95     int shu1=(int) (Math.random()*10+1);
     96  96     int shu2=(int) (Math.random()*10+1);
     97  97     T4.setText(String.valueOf(shu1));
     98  98     T6.setText(String.valueOf(shu2));
     99  99     T5.setText(String.valueOf("-"));
    100 100     result=String.valueOf(shu1-shu2);
    101 101     }
    102 102     
    103 103     static void Jianhaofenshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    104 104         int shu1=(int) (Math.random()*10+1);
    105 105         int shu2=(int) (Math.random()*10+1);
    106 106         int shu3=(int) (Math.random()*10+1);
    107 107         int shu4=(int) (Math.random()*10+1);
    108 108         if(shu1>shu2)
    109 109         {
    110 110             int temp=shu1;
    111 111             shu1=shu2;
    112 112             shu2=temp;
    113 113         }
    114 114         if(shu3>shu4)
    115 115         {
    116 116             int temp=shu3;
    117 117             shu3=shu4;
    118 118             shu4=temp;
    119 119         }
    120 120         
    121 121         T4.setText(String.valueOf(shu1+"/"+shu2));
    122 122         T6.setText(String.valueOf(shu3+"/"+shu4));
    123 123         T5.setText(String.valueOf("-"));
    124 124         int res1=(shu1*shu4)-(shu2*shu3);
    125 125         int res2=shu2*shu4;
    126 126         int pan=0;
    127 127         if(res1>res2)
    128 128         {
    129 129              pan=res2;
    130 130         }
    131 131         else
    132 132         {
    133 133              pan=res1;
    134 134         }
    135 135         for(int i=pan;i>0;i--)
    136 136         {
    137 137             if(res1%pan==0&&res2%pan==0)
    138 138             {
    139 139                 res1=res1/pan;
    140 140                 res2=res2/pan;
    141 141                 if(res1>res2)
    142 142                 {
    143 143                      pan=res2;
    144 144                 }
    145 145                 else
    146 146                 {
    147 147                      pan=res1;
    148 148                 }
    149 149                 i=pan;
    150 150             }
    151 151         }
    152 152         
    153 153         result=String.valueOf(shu1+"/"+shu2);
    154 154     }
    155 155     
    156 156     static void Jianhaojieshengyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    157 157         int shu1=(int) (Math.random()*9+1);
    158 158         int res1=shu1;
    159 159         T6.setText(String.valueOf("!"+shu1));
    160 160         for(int i=shu1-1;i>0;i--)
    161 161         {
    162 162              res1=res1*i;
    163 163         }
    164 164         result=String.valueOf(res1);
    165 165     }
    166 166     
    167 167     static void shenghaozhengshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    168 168         int shu1=(int) (Math.random()*10+1);
    169 169         int shu2=(int) (Math.random()*10+1);
    170 170         T4.setText(String.valueOf(shu1));
    171 171         T6.setText(String.valueOf(shu2));
    172 172         T5.setText(String.valueOf("*"));
    173 173         result=String.valueOf(shu1*shu2);
    174 174     }
    175 175     
    176 176     static void shenghaofenshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    177 177         int shu1=(int) (Math.random()*10+1);
    178 178         int shu2=(int) (Math.random()*10+1);
    179 179         int shu3=(int) (Math.random()*10+1);
    180 180         int shu4=(int) (Math.random()*10+1);
    181 181         if(shu1>shu2)
    182 182         {
    183 183             int temp=shu1;
    184 184             shu1=shu2;
    185 185             shu2=temp;
    186 186         }
    187 187         if(shu3>shu4)
    188 188         {
    189 189             int temp=shu3;
    190 190             shu3=shu4;
    191 191             shu4=temp;
    192 192         }
    193 193         
    194 194         T4.setText(String.valueOf(shu1+"/"+shu2));
    195 195         T6.setText(String.valueOf(shu4+"/"+shu3));
    196 196         T5.setText(String.valueOf("*"));
    197 197         int res1=(shu1)*(shu3);
    198 198         int res2=shu2*shu4;
    199 199         int pan=0;
    200 200         if(res1>res2)
    201 201         {
    202 202              pan=res2;
    203 203         }
    204 204         else
    205 205         {
    206 206              pan=res1;
    207 207         }
    208 208         for(int i=pan;i>0;i--)
    209 209         {
    210 210             if(res1%pan==0&&res2%pan==0)
    211 211             {
    212 212                 res1=res1/pan;
    213 213                 res2=res2/pan;
    214 214                 if(res1>res2)
    215 215                 {
    216 216                      pan=res2;
    217 217                 }
    218 218                 else
    219 219                 {
    220 220                      pan=res1;
    221 221                 }
    222 222                 i=pan;
    223 223             }
    224 224         }
    225 225         
    226 226         result=String.valueOf(shu1+"/"+shu2);
    227 227     }
    228 228     
    229 229     static void shenghaojieshengyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    230 230         int shu1=(int) (Math.random()*9+1);
    231 231         int res1=shu1;
    232 232         T6.setText(String.valueOf("!"+shu1));
    233 233         for(int i=shu1-1;i>0;i--)
    234 234         {
    235 235              res1=res1*i;
    236 236         }
    237 237         result=String.valueOf(res1);
    238 238     }
    239 239     
    240 240     static void chuhaozhengshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    241 241         int shu1=(int) (Math.random()*10+1);
    242 242         int shu2=(int) (Math.random()*10+1);
    243 243         T4.setText(String.valueOf(shu1));
    244 244         T6.setText(String.valueOf(shu2));
    245 245         T5.setText(String.valueOf("/"));
    246 246         result=String.valueOf(shu1/shu2);
    247 247     }
    248 248     
    249 249     static void chuhaofenshuyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    250 250         int shu1=(int) (Math.random()*10+1);
    251 251         int shu2=(int) (Math.random()*10+1);
    252 252         int shu3=(int) (Math.random()*10+1);
    253 253         int shu4=(int) (Math.random()*10+1);
    254 254         if(shu1>shu2)
    255 255         {
    256 256             int temp=shu1;
    257 257             shu1=shu2;
    258 258             shu2=temp;
    259 259         }
    260 260         if(shu3>shu4)
    261 261         {
    262 262             int temp=shu3;
    263 263             shu3=shu4;
    264 264             shu4=temp;
    265 265         }
    266 266         
    267 267         T4.setText(String.valueOf(shu1+"/"+shu2));
    268 268         T6.setText(String.valueOf(shu3+"/"+shu4));
    269 269         T5.setText(String.valueOf("/"));
    270 270         int res1=shu1*shu4;
    271 271         int res2=shu2*shu3;
    272 272         int pan=0;
    273 273         if(res1>res2)
    274 274         {
    275 275              pan=res2;
    276 276         }
    277 277         else
    278 278         {
    279 279              pan=res1;
    280 280         }
    281 281         for(int i=pan;i>0;i--)
    282 282         {
    283 283             if(res1%pan==0&&res2%pan==0)
    284 284             {
    285 285                 res1=res1/pan;
    286 286                 res2=res2/pan;
    287 287                 if(res1>res2)
    288 288                 {
    289 289                      pan=res2;
    290 290                 }
    291 291                 else
    292 292                 {
    293 293                      pan=res1;
    294 294                 }
    295 295                 i=pan;
    296 296             }
    297 297         }
    298 298         
    299 299         result=String.valueOf(shu1+"/"+shu2);
    300 300     }
    301 301     
    302 302     static void chuhaojieshengyunsuan(JTextField T4,JTextField T6,JTextField T5,String result) {
    303 303         int shu1=(int) (Math.random()*9+1);
    304 304         int res1=shu1;
    305 305         T6.setText(String.valueOf("!"+shu1));
    306 306         for(int i=shu1-1;i>0;i--)
    307 307         {
    308 308              res1=res1*i;
    309 309         }
    310 310         result=String.valueOf(res1);
    311 311     }
    312 312     
    313 313     
    314 314     
    315 315 
    316 316 }
    计算类代码 

    开发环境:eclipse

    结对同伴 :40 孔德颖

    同伴博客:http://www.cnblogs.com/kong21/p/4469634.html

    程序介绍:

      1.第一阶段目标 - 把计算的功能封装成类。

      2.设计测试用例:用白盒与黑盒测试设计技术,为计算核心设计测试用例。

      3.在实验环境中(如MyEclipse集成开发环境+Junit测试框架)运行测试用例,分析测试结果,找出程序问题,给出改进前后的代码对照。

    注:为了对比,被封装后的代码在原程序中并没有删除,只是屏蔽了而已。

  • 相关阅读:
    SDU暑期集训排位(8)
    hdu1423 最长公共上升子序列
    poj2385 Apple Catching (线性dp)
    hdu5857 Median(模拟)
    hdu5858 Hard problem(求两圆相交面积)
    shuoj 1 + 2 = 3? (二分+数位dp)
    Codeforces Round #460 (Div. 2) B Perfect Number(二分+数位dp)
    hdu4734 F(x)(数位dp)
    hdu3709 Balanced Number (数位dp)
    hdu3652 B-number(数位dp)
  • 原文地址:https://www.cnblogs.com/Lingchao/p/4468568.html
Copyright © 2011-2022 走看看