四则运算安卓版

题目:四则运算安卓版

设计思想:安卓版四则运算相对来说思路较为简单,分为三部分:简单,一般,复杂。简单里面主要是加减法,一般里面是乘除法,复杂里面是涉及四则运算的,有加减乘除。分为四个界面(1)首页,(2)简单页面,(3)一般难度页面,(4)复杂页面。在首页可以选择自己相应的难度,从而调用事件跳转到对应的界面,自动出题,填出结果,然后提交判断是否正确。如果想继续做,可以点击下一题。

代码:

package com.jingpan.calculating;
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
 
public class MainActivity extends Activity {
 
    private Button b1;
    private Button b2;
    private Button b3;
     
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
         
        b1=(Button)findViewById(R.id.button1);
        b2=(Button)findViewById(R.id.button2);
        b3=(Button)findViewById(R.id.button3);
         
        b1.setOnClickListener(new View.OnClickListener() {
             
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent intent=new Intent(MainActivity.this,SimpleActivity.class);
                startActivity(intent);
                finish();
            }
        });
       b2.setOnClickListener(new View.OnClickListener() {
             
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent intent=new Intent(MainActivity.this,CommonActivity.class);
                startActivity(intent);
                finish();
            }
        });
       b3.setOnClickListener(new View.OnClickListener() {
             
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent intent=new Intent(MainActivity.this,ComplexActivity.class);
                startActivity(intent);
                finish();
            }
        });
         
    }
    
     
     
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
    //@Override
//  public boolean onOptionsItemSelected(MenuItem item) {
//      // Handle action bar item clicks here. The action bar will
//      // automatically handle clicks on the Home/Up button, so long
//      // as you specify a parent activity in AndroidManifest.xml.
//      int id = item.getItemId();
//      if (id == R.id.action_settings) {
//          return true;
//      }
//      return super.onOptionsItemSelected(item);
//  }
}
  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
package com.jingpan.calculating;
 
import java.util.Random;
 
import android.app.Activity;
import android.content.Intent;
import android.graphics.Interpolator;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
 
public class SimpleActivity extends Activity {
 
    private TextView t;
    private EditText e;
    private Button bn;
    private EditText et;
    private int r;
    private Button bnext;
     
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
         
         
        setContentView(R.layout.simplemain);
        t=(TextView)findViewById(R.id.textView2);
        e=(EditText)findViewById(R.id.editText1);
        bn=(Button)findViewById(R.id.button1);
        et=(EditText)findViewById(R.id.editText2);
        bnext=(Button)findViewById(R.id.button2);
        int a,b;
        /*int n;
        n=Integer.valueOf(e.getText().toString());*/
        a=(int) (1+Math.random()*10);
        b=(int) (1+Math.random()*10);
        int c;
        char ch;
         
        c=(int)(1+Math.random()*10);
        if(c/2==0)
        {
            ch='+';
            r=a+b;
        }
        else{
            ch='-';
            r=a-b;
        }
             
        t.setText(""+a+" "+ch+" "+b+" "+"=");
        bn.setOnClickListener(new View.OnClickListener() {
             
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
            int result;
            result=Integer.parseInt(et.getText().toString());
            String t="";
            if(result==r)
            {
                t="答对了!!!";
            }
            else
            {
                t="答错了!!!正确答案是"+r;
            }
            Toast.makeText(SimpleActivity.this, t, Toast.LENGTH_LONG).show();
            }
        });
        bnext.setOnClickListener(new View.OnClickListener() {
             
            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent intent=new Intent(SimpleActivity.this,SimpleActivity.class);
                startActivity(intent);
                finish();
            }
        });
    }
    
     
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.jingpan.calculating.MainActivity" >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="95dp"
        android:layout_marginTop="22dp"
        android:text="简单" />
 
   
 
    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView3"
        android:layout_below="@+id/editText1"
        android:layout_marginTop="41dp"
        android:text="计算式:" />
 
    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView4"
        android:layout_alignBottom="@+id/textView4"
        android:layout_alignLeft="@+id/textView1"
        android:text="TextView" />
 
    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView4"
        android:layout_below="@+id/textView4"
        android:layout_marginTop="38dp"
        android:text="结果:" />
 
    <EditText
        android:id="@+id/editText2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView5"
        android:layout_alignBottom="@+id/textView5"
        android:layout_toRightOf="@+id/textView5"
        android:ems="10"
        />
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText2"
        android:layout_below="@+id/editText2"
        android:layout_marginTop="51dp"
        android:text="确认" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button1"
        android:layout_alignBottom="@+id/button1"
        android:layout_marginLeft="19dp"
        android:layout_toRightOf="@+id/textView2"
        android:text="下一题" />
   
</RelativeLayout>
  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
package com.jingpan.calculating;
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
 
public class CommonActivity extends Activity {
 
    private TextView t;
    private EditText e;
    private Button bn;
    private EditText et;
    private double r;
    private Button bnext;
         
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
             
             
            setContentView(R.layout.commonmain);
            t=(TextView)findViewById(R.id.textView2);
            e=(EditText)findViewById(R.id.editText1);
            bn=(Button)findViewById(R.id.button1);
            et=(EditText)findViewById(R.id.editText2);
            bnext=(Button)findViewById(R.id.button2);
            float a,b;
            /*int n;
            n=Integer.valueOf(e.getText().toString());*/
            a=(int) (1+Math.random()*10);
            b=(int) (1+Math.random()*10);
            int c;
            char ch;
             
            c=(int)(1+Math.random()*10);
            if(c/2==0)
            {
                ch='*';
                r=(float)(a*b);
            }
            else{
                ch='/';
                r=(float)(a/b);
            }
                 
            t.setText(""+a+" "+ch+" "+b+" "+"=");
            bn.setOnClickListener(new View.OnClickListener() {
                 
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                float result;
                result=Float.parseFloat(et.getText().toString());
                String t="";
                if(result==r)
                {
                    t="答对了!!!";
                }
                else
                {
                    t="答错了!!!正确答案是"+r;
                }
                Toast.makeText(CommonActivity.this, t, Toast.LENGTH_LONG).show();
                }
            });
            bnext.setOnClickListener(new View.OnClickListener() {
                 
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Intent intent=new Intent(CommonActivity.this,CommonActivity.class);
                    startActivity(intent);
                    finish();
                }
            });
        }
    
     
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
 
    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.jingpan.calculating.MainActivity" >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="95dp"
        android:layout_marginTop="22dp"
        android:text="一般" />
 
 
    <EditText
        android:id="@+id/editText1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView3"
        android:layout_alignBottom="@+id/textView3"
        android:layout_toRightOf="@+id/textView3"
        android:ems="10"
         >
 
        <requestFocus />
    </EditText>
 
    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView3"
        android:layout_below="@+id/editText1"
        android:layout_marginTop="41dp"
        android:text="计算式:" />
 
    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView4"
        android:layout_alignBottom="@+id/textView4"
        android:layout_alignLeft="@+id/textView1"
        android:text="TextView" />
 
    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView4"
        android:layout_below="@+id/textView4"
        android:layout_marginTop="38dp"
        android:text="结果:" />
 
    <EditText
        android:id="@+id/editText2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView5"
        android:layout_alignBottom="@+id/textView5"
        android:layout_toRightOf="@+id/textView5"
        android:ems="10"
        />
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText2"
        android:layout_below="@+id/editText2"
        android:layout_marginTop="51dp"
        android:text="确认" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button1"
        android:layout_alignBottom="@+id/button1"
        android:layout_marginLeft="19dp"
        android:layout_toRightOf="@+id/textView2"
        android:text="下一题" />
   
</RelativeLayout>
  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
package com.jingpan.calculating;
 
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
 
public class ComplexActivity extends Activity{
    private TextView t;
    private EditText e;
    private Button bn;
    private EditText et;
    private double r;
    private Button bnext;
         
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
             
             
            setContentView(R.layout.complexmain);
            t=(TextView)findViewById(R.id.textView2);
            e=(EditText)findViewById(R.id.editText1);
            bn=(Button)findViewById(R.id.button1);
            et=(EditText)findViewById(R.id.editText2);
            bnext=(Button)findViewById(R.id.button2);
            float a,b,d,e;
            /*int n;
            n=Integer.valueOf(e.getText().toString());*/
            a=(int) (1+Math.random()*10);
            b=(int) (1+Math.random()*10);
            d=(int) (1+Math.random()*10);
            int c;
            char ch = 0;
            char ch1 = 0;
             
            c=(int)(1+Math.random()*10);
            e=(int)(1+Math.random()*10);
            if(c/4==0)
            {
                ch='+';
                if(e/4==0)
                {
                    ch1='+';
                    r=(float)(a+b+d);
                }
                else if(e/4==1)
                {
                    ch1='-';
                    r=(float)(a-b-d);
                }
                else if(e/4==2)
                {
                    ch1='*';
                    r=(float)(a*b*d);
                }
                else if(e/4==3)
                {
                    ch1='*';
                    r=(float)(a*b*d);
                }
            t.setText(""+a+" "+ch+" "+b+" "+ch1+" "+d+" "+"=");
            }
             
            if(c/4==1)
            {
                ch='-';
                if(e/4==0)
                {
                    ch1='+';
                    r=(float)(a-b+d);
                }
                else if(e/4==1)
                {
                    ch1='-';
                    r=(float)(a-b-d);
                }
                else if(e/4==2)
                {
                    ch1='*';
                    r=(float)(a-b*d);
                }
                else if(e/4==3)
                {
                    ch1='/';
                    r=(float)(a-b/d);
                }
                t.setText(""+a+" "+ch+" "+b+" "+ch1+" "+d+" "+"=");
            }
            if(c/4==2)
            {
                ch='*';
                if(e/4==0)
                {
                    ch1='+';
                    r=(float)(a*b+d);
                }
                else if(e/4==1)
                {
                    ch1='-';
                    r=(float)(a*b-d);
                }
                else if(e/4==2)
                {
                    ch1='*';
                    r=(float)(a*b*d);
                }
                else if(e/4==3)
                {
                    ch1='/';
                    r=(float)(a*b/d);
                }
                t.setText(""+a+" "+ch+" "+b+" "+ch1+" "+d+" "+"=");
            }
                 
             
            bn.setOnClickListener(new View.OnClickListener() {
                 
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                float result;
                result=Float.parseFloat(et.getText().toString());
                String t="";
                if(result==r)
                {
                    t="答对了!!!";
                }
                else
                {
                    t="答错了!!!正确答案是"+r;
                }
                Toast.makeText(ComplexActivity.this, t, Toast.LENGTH_LONG).show();
                }
            });
            bnext.setOnClickListener(new View.OnClickListener() {
                 
                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub
                    Intent intent=new Intent(ComplexActivity.this,ComplexActivity.class);
                    startActivity(intent);
                    finish();
                }
            });
        }
}
  

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.jingpan.calculating.MainActivity" >
 
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginLeft="95dp"
        android:layout_marginTop="22dp"
        android:text="复杂" />
 
    
 
    <TextView
        android:id="@+id/textView4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView3"
        android:layout_below="@+id/editText1"
        android:layout_marginTop="41dp"
        android:text="计算式:" />
 
    <TextView
        android:id="@+id/textView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView4"
        android:layout_alignBottom="@+id/textView4"
        android:layout_alignLeft="@+id/textView1"
        android:text="TextView" />
 
    <TextView
        android:id="@+id/textView5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/textView4"
        android:layout_below="@+id/textView4"
        android:layout_marginTop="38dp"
        android:text="结果:" />
 
    <EditText
        android:id="@+id/editText2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/textView5"
        android:layout_alignBottom="@+id/textView5"
        android:layout_toRightOf="@+id/textView5"
        android:ems="10"
        />
 
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignLeft="@+id/editText2"
        android:layout_below="@+id/editText2"
        android:layout_marginTop="51dp"
        android:text="确认" />
 
    <Button
        android:id="@+id/button2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/button1"
        android:layout_alignBottom="@+id/button1"
        android:layout_marginLeft="19dp"
        android:layout_toRightOf="@+id/textView2"
        android:text="下一题" />
   
</RelativeLayout>

 

  

测试结果:

实验总结:头一次进行安卓编程,感觉收获很大。

开发日志:

星期听课上网查资料编程读书总计
周二 11 2
周三    0
周四2   2
周五   13
周一 1113
周二 21 3
周三 1214
总计255315

 

时间记录日志:

日期开始时间结束时间休息时间工作时间活动内容
4/119:3020:30060结对开发
4/416:3017:30060结对开发
4/519:0020:00060结对开发
4/613:5015:3020100结对开发

缺陷日志:

在运算除法的时候小数点的位数无法控制。界面也不是很友好,存在很大的问题,还需要改进,没有范围,数量控制,以后将完善。

队友博客:http://home.cnblogs.com/u/apan008/

转载于:https://www.cnblogs.com/lvstudy/p/5360311.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值