zoukankan      html  css  js  c++  java
  • 四则运算之主要代码

    Mainactivity:

    public class MainActivity extends Activity {  

    Button start,end,wa;  

    int yourChose=-1; 

        private void showSinChosDia()      { 

            final String[] mList={"普通","困难","加法练习","减法练习","乘法练习","除法练习"};   

           yourChose=-1;     

         AlertDialog.Builder sinChosDia=new AlertDialog.Builder(MainActivity.this);      

        sinChosDia.setTitle("难度/单项练习");     

         sinChosDia.setSingleChoiceItems(mList, 0, new DialogInterface.OnClickListener() {                            @Override             

    public void onClick(DialogInterface dialog, int which) {           

           // TODO Auto-generated method stub          

            yourChose=which;                        

            }        

      }); 

      sinChosDia.setPositiveButton("确定", new DialogInterface.OnClickListener() { 
                 
                @Override 
                public void onClick(DialogInterface dialog, int which) { 
                    // TODO Auto-generated method stub 
                 
                 
                    if(yourChose==0) 
                    { 
                     Intent intent = new Intent(MainActivity.this, CalActivity.class);
                     startActivity(intent);
                    } 
                    if(yourChose==1)
                    {
                     Intent intent = new Intent(MainActivity.this, CalActivity1.class);
                     startActivity(intent);
                    }
                    if(yourChose==2)
                    {
                     Intent intent = new Intent(MainActivity.this, CalActivity2.class);
                     startActivity(intent);
                    }
                    if(yourChose==3)
                    {
                     Intent intent = new Intent(MainActivity.this, CalActivity3.class);
                     startActivity(intent);
                    }
                    if(yourChose==4)
                    {
                     Intent intent = new Intent(MainActivity.this, CalActivity4.class);
                     startActivity(intent);
                    }
                    if(yourChose==5)
                    {
                     Intent intent = new Intent(MainActivity.this, CalActivity5.class);
                     startActivity(intent);
                    }
                } 
            }); 
            sinChosDia.create().show(); 
        } 

    protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            final DBHelper helper = new DBHelper(this);
      final Cursor c = helper.query();
            start=(Button) findViewById(R.id.button1);
            start.setOnClickListener(new Button.OnClickListener(){
           
       @Override
       
       public void onClick(View v) {
        // TODO Auto-generated method stub
        
        showSinChosDia();
        
       }
            });
            wa=(Button) findViewById(R.id.button2);
            wa.setOnClickListener(new Button.OnClickListener(){
             
       @Override
       public void onClick(View v) {
        // TODO Auto-generated method stub
        if(!c.moveToNext())
        {
         helper.close();
         AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
         builder.setCancelable(false);
         builder.setTitle("结束"); 
         builder.setMessage("无错题"); 
         builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { 
          
             public void onClick(DialogInterface dialog, int whichButton) { 
             } 
         }); 
         builder.create().show();
        }
        else{
         Intent intent = new Intent(MainActivity.this, ShowDB.class);
         startActivity(intent);
        }
       }
            });
            end=(Button) findViewById(R.id.button3);
            end.setOnClickListener(new Button.OnClickListener(){
             
       @Override
       public void onClick(View v) {
        // TODO Auto-generated method stub
        System.exit(0);
       }
            });
        }
       
    }

    CalActivity:

    public class CalActivity extends Activity {  

    RelativeLayout rl1;  

    ImageView im;  int op;

        int a;     int b;     int n=0;  

       int w=0;     String r;

        Double answer,respon;   

      TextView textview1,textview2;  

       EditText editText;  

       Button button;

      @Override   protected void onCreate(Bundle savedInstanceState) {  

      super.onCreate(savedInstanceState);

       setContentView(R.layout.cal_main);  

      ActionBar actionBar = getActionBar();   

        actionBar.setDisplayShowHomeEnabled(true);     

      actionBar.setDisplayHomeAsUpEnabled(true);

       rl1=(RelativeLayout)findViewById(R.id.RelativeLayout1);

       im=(ImageView)findViewById(R.id.imageView1);   

    textview1=(TextView)findViewById(R.id.textView1);  

      textview2=(TextView)findViewById(R.id.textView2);

       editText=(EditText)findViewById(R.id.EditText1);

     a =new Random().nextInt(100);
             b =new Random().nextInt(100);
             op=new Random().nextInt(4);
             switch(op)//分支语句,判断OP是哪种情况
             {
             case 0:
              textview1.setText(a+"+"+b+"=");
                 answer=(double) (a+b);
                 break;
             case 1:
              textview1.setText(a+"-"+b+"=");
                 answer=(double) (a-b);
                 break;
             case 2:
              a =new Random().nextInt(10);
              b =new Random().nextInt(10);
              textview1.setText(a+"*"+b+"=");
                 answer=(double) (a*b);
                 break;
             case 3:
              a =new Random().nextInt(10);
              b =new Random().nextInt(10);
                 while(b==0){
                     b =new Random().nextInt(10);
                 }

      textview1.setText(a+"/"+b+"=");     

             BigDecimal   x   =   new   BigDecimal((double)a/b);  //保留2位小数。  

                answer  =   x.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();            

                    break;          }   

           button=(Button)findViewById(R.id.button4);       

       button.setOnClickListener(new Button.OnClickListener(){

        @Override     public void onClick(View arg0) {     

     // TODO Auto-generated method stub   

       if(!checkInteger(editText.getText().toString()))      {    

       AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity.this);

          builder.setCancelable(false);    

       builder.setTitle("错误");       

     builder.setMessage("你输入的信息有错");

            builder.setPositiveButton("确定", new DialogInterface.OnClickListener() { 

                      public void onClick(DialogInterface dialog, int whichButton) {        

                    }        });       

    builder.create().show();     

      editText.setText("");   

        return;    

      }     

     respon=Double.parseDouble(editText.getText().toString());  

        r=textview1.getText().toString();  

        ContentValues values = new ContentValues();  

        values.put("problem", r);           

            values.put("answer", answer);   

       editText.setText("");

         n++;

         if(respon.equals(answer))      {     

      im.setImageResource(R.drawable.d);  

         textview2.setText("你答对了!");

         }      else{    

       im.setImageResource(R.drawable.c);  

         DBHelper helper = new DBHelper(getApplicationContext());

          final Cursor c = helper.query();     

      helper.insert(values);   

       w++;     

      textview2.setText("你答错了! "+r+answer);  

         helper.close();      }      if(n<5)   

       {       a =new Random().nextInt(100);  

               b =new Random().nextInt(100);    

             op=new Random().nextInt(4);    

             switch(op)             {        

         case 0:              textview1.setText(a+"+"+b+"=");

                    answer=(double) (a+b);             

        break;             case 1:              textview1.setText(a+"-"+b+"=");    

                 answer=(double) (a-b);             

        break;             case 2:              a =new Random().nextInt(10);    

              b =new Random().nextInt(10);       

           textview1.setText(a+"*"+b+"=");            

         answer=(double) (a*b);                 break;      

           case 3:              a =new Random().nextInt(10);     

             b =new Random().nextInt(10);               

      while(b==0){                     b =new Random().nextInt(10);      

               }               

      textview1.setText(a+"/"+b+"=");         

            BigDecimal   x   =   new   BigDecimal((double)a/b);      

                answer  =   x.setScale(2,   BigDecimal.ROUND_HALF_UP).doubleValue();                                  break;             }      }    

      else      {    

       int right=n-w;      

     double rvate=(double)right/n*100;    

       AlertDialog.Builder builder = new AlertDialog.Builder(CalActivity.this);

          builder.setCancelable(false);      

     builder.setTitle("结束");      

      builder.setMessage("你答对了"+right+"题"+" "+"答错了"+w+"题"+" "+"正确率为"+rvate+"%");        builder.setPositiveButton("确定", new DialogInterface.OnClickListener() {   

                     public void onClick(DialogInterface dialog, int whichButton) {    

             Intent intent = new Intent(CalActivity.this, MainActivity.class);   

             intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);     

           startActivity(intent);           }        }); 

          builder.create().show();      }     }               });  

             }   public boolean checkInteger(String text) {  

            /*      当输入的文本去掉前后空格长度为0时返回false  */     

         if(text.trim().length()==0){                  return false;    

          }          try{                  Double.parseDouble(text);     

         }catch(Exception e){                  /*      无法转换为整数时返回false   */       

               return false;          }

             return true;  }   @Override    

      public boolean onCreateOptionsMenu(Menu menu) {  

         // TODO Auto-generated method stub    

       getMenuInflater().inflate(R.menu.main, menu);    

       return super.onCreateOptionsMenu(menu);   

       }      @Override  

        public boolean onOptionsItemSelected(MenuItem item) {  

         // TODO Auto-generated method stub       item.setChecked(true);   

     switch (item.getItemId()) {    case android.R.id.home:   

      //创建启动MainActivity的Intent     Intent intent1=new Intent(this,MainActivity.class);  

       //添加额外的Flag,将Activity栈中处于MainActivity之上的Activity弹出     intent1.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);  

       startActivity(intent1);     break;

       case R.id.item4:

        item.setChecked(true);   

      rl1.setBackgroundDrawable(getResources().getDrawable(android.R.color.black));   

      break;    case R.id.item5:  

       item.setChecked(true);  

       rl1.setBackgroundDrawable(getResources().getDrawable(R.drawable.bg1));

        break;    case R.id.item6:

        item.setChecked(true);   

      rl1.setBackgroundDrawable(getResources().getDrawable(R.drawable.bg3));  

       break;    case R.id.item7:   

      item.setChecked(true);     textview1.setTextColor(Color.YELLOW);    

     textview2.setTextColor(Color.YELLOW);  

       editText.setTextColor(Color.YELLOW);  

       button.setTextColor(Color.YELLOW);   

      break;    case R.id.item8:     item.setChecked(true);  

       textview1.setTextColor(Color.BLUE);  

       textview2.setTextColor(Color.BLUE);     

    editText.setTextColor(Color.BLUE);   

      button.setTextColor(Color.BLUE);  

       break;    case R.id.item9:     item.setChecked(true);

        textview1.setTextColor(Color.RED);   

      textview2.setTextColor(Color.RED);    

     editText.setTextColor(Color.RED);  

       button.setTextColor(Color.RED);

        break;    case R.id.item10:     item.setChecked(true);  

       textview1.setTextColor(Color.BLACK);

        textview2.setTextColor(Color.BLACK);   

      editText.setTextColor(Color.BLACK);

        button.setTextColor(Color.BLACK);

        break;    case R.id.item11:     item.setChecked(true);  

       textview1.setTextSize(10);   

      textview2.setTextSize(10);    

     editText.setTextSize(10);     button.setTextSize(10);

        break;    case R.id.item12:     item.setChecked(true);

        textview1.setTextSize(20);  

       textview2.setTextSize(20);     editText.setTextSize(20);

        button.setTextSize(20);    

     break;    case R.id.item13:     item.setChecked(true);     

    textview1.setTextSize(30);     textview2.setTextSize(30);  

       editText.setTextSize(30);     button.setTextSize(30);   

      break;

       default:     break;    }

          return super.onOptionsItemSelected(item);      }

      }

  • 相关阅读:
    第十一周上机练习
    JAVA第十周上机练习
    JAVA第九周上机练习
    JAVA第八周作业
    JAVA第八周上机作业
    JAVA第七周作业
    Java第七周上机练习
    Java第六周作业
    JAVA第六周上机练习
    34-指针与二维数组
  • 原文地址:https://www.cnblogs.com/wuzijian/p/5059846.html
Copyright © 2011-2022 走看看