Pages

Kalkulator Sederhana dengan Android

Pada tutorial ini, saya akan menjelaskan cara membuat kalkulator dengan sederhana.









berikut adalah step yang dikerjakan dalam tutorial ini :

  1. Tambah
    1. Desain untuk tambah
    2. Buat program untuk menjumlahkan
  2. Kurang, Bagi dan Kali
  3. Membuat program lengkap dengan menggunakan Method
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
<?xml version="1.0" encoding="utf-8"?>

<AbsoluteLayout 
 android:id="@+id/AbsoluteLayout01" 
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent" 
 xmlns:android="http://schemas.android.com/apk/res/android">
 
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_y="25dip" 
  android:layout_height="wrap_content" 
  android:layout_x="95dip" 
  android:text="Kalkulator" 
  android:textSize="30px">
 </TextView>
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_x="30dip" 
  android:layout_y="100dip" 
  android:text="Nilai 1">
 </TextView>
 <EditText 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:width="200px" 
  android:layout_x="100dip" 
  android:layout_y="90dip" 
  android:id="@+id/textNilai1">
 </EditText>
  
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_x="30dip" 
  android:layout_y="150dip" 
  android:text="Nilai 2">
 </TextView>
 <EditText 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:id="@+id/textNilai2" 
  android:width="200px" 
  android:layout_x="100dip" 
  android:layout_y="135dip">
 </EditText>
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_x="30dip" 
  android:layout_y="200dip" 
  android:text="Hasil">
 </TextView>
  <TextView 
  android:layout_height="wrap_content" 
  android:layout_y="200dip" 
  android:layout_x="100dip" 
  android:layout_width="wrap_content" 
  android:id="@+id/viewHasil">
 </TextView>
 <Button 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:text="     +    " 
  android:layout_x="30dip" 
  android:layout_y="250dip" 
  android:id="@+id/buttonTambah">
 </Button>
 
</AbsoluteLayout>


Setelah selesai mendesain, buka KalkulatorMain.java, lalu ketikkan source code berikut.



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
package jhohannespurba.blogspot.com;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class KalkulatorMain extends Activity {
 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  final EditText nilai1 = (EditText) findViewById(R.id.textNilai1);
  final EditText nilai2 = (EditText) findViewById(R.id.textNilai2);
  final TextView viewHasil = (TextView) findViewById(R.id.viewHasil);
  Button tambah = (Button) findViewById(R.id.buttonTambah);
  tambah.setOnClickListener(new OnClickListener() {

   @Override
   public void onClick(View arg0) {
    int n1 = Integer.parseInt(nilai1.getText().toString());
    int n2 = Integer.parseInt(nilai2.getText().toString());
    int hasil = n1 + n2;
    viewHasil.setText(String.valueOf(hasil));
   }
  });
 }
}


Setelah selesai, coba jalankan program Anda, maka akan kelihatan seperti gambar berikut :





Setelah berhasil untuk membuat tambah, sekarang lengkapi desain pada main.xml dengan source code di bawah ini, sehingga program memiliki button kurang, kali dan bagi. 

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
<?xml version="1.0" encoding="utf-8"?>

<AbsoluteLayout 
 android:id="@+id/AbsoluteLayout01" 
 android:layout_width="fill_parent" 
 android:layout_height="fill_parent" 
 xmlns:android="http://schemas.android.com/apk/res/android">
 
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_y="25dip" 
  android:layout_height="wrap_content" 
  android:layout_x="95dip" 
  android:text="Kalkulator" 
  android:textSize="30px">
 </TextView>
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_x="30dip" 
  android:layout_y="100dip" 
  android:text="Nilai 1">
 </TextView>
 <EditText 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:width="200px" 
  android:layout_x="100dip" 
  android:layout_y="90dip" 
  android:id="@+id/textNilai1">
 </EditText>
  
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_x="30dip" 
  android:layout_y="150dip" 
  android:text="Nilai 2">
 </TextView>
 <EditText 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:id="@+id/textNilai2" 
  android:width="200px" 
  android:layout_x="100dip" 
  android:layout_y="135dip">
 </EditText>
 <TextView 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_x="30dip" 
  android:layout_y="200dip" 
  android:text="Hasil">
 </TextView>
  <TextView 
  android:layout_height="wrap_content" 
  android:layout_y="200dip" 
  android:layout_x="100dip" 
  android:layout_width="wrap_content" 
  android:id="@+id/viewHasil">
 </TextView>
 <Button 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:text="     +    " 
  android:layout_x="30dip" 
  android:layout_y="250dip" 
  android:id="@+id/buttonTambah">
 </Button>
 <Button 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_y="250dip" 
  android:id="@+id/buttonKurang" 
  android:text="     -    " 
  android:layout_x="100dip">
 </Button>
 <Button 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_y="250dip" 
  android:id="@+id/buttonKali" 
  android:text="     *    " 
  android:layout_x="170dip">
 </Button>
 <Button 
  android:layout_width="wrap_content" 
  android:layout_height="wrap_content" 
  android:layout_y="250dip" 
  android:id="@+id/buttonBagi" 
  android:text="     :    " 
  android:layout_x="240dip">
 </Button>
</AbsoluteLayout>


Setelah selesai di desain, maka lengkapi juga untuk KalkulatorMain.java dengan source code berikut :



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
package jhohannespurba.blogspot.com;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class KalkulatorMain extends Activity {
 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  final EditText nilai1 = (EditText) findViewById(R.id.textNilai1);
  final EditText nilai2 = (EditText) findViewById(R.id.textNilai2);
  final TextView viewHasil = (TextView) findViewById(R.id.viewHasil);
  
  Button tambah = (Button) findViewById(R.id.buttonTambah);
  tambah.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    int n1 = Integer.parseInt(nilai1.getText().toString());
    int n2 = Integer.parseInt(nilai2.getText().toString());
    int hasil = n1 + n2;
    viewHasil.setText(String.valueOf(hasil));
   }
  });
  
  Button kurang = (Button) findViewById(R.id.buttonKurang);
  kurang.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    int n1 = Integer.parseInt(nilai1.getText().toString());
    int n2 = Integer.parseInt(nilai2.getText().toString());
    int hasil = n1 - n2;
    viewHasil.setText(String.valueOf(hasil));    
   }
  });
  
  Button kali= (Button) findViewById(R.id.buttonKali);
  kali.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    int n1 = Integer.parseInt(nilai1.getText().toString());
    int n2 = Integer.parseInt(nilai2.getText().toString());
    int hasil = n1 * n2;
    viewHasil.setText(String.valueOf(hasil));    
   }
  });
  
  Button bagi = (Button) findViewById(R.id.buttonBagi);
  bagi.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    int n1 = Integer.parseInt(nilai1.getText().toString());
    int n2 = Integer.parseInt(nilai2.getText().toString());
    double hasil = n1 /(double) n2;
    viewHasil.setText(String.valueOf(hasil));    
   }
  });
  
 }
}


Jika dengan program di atas, untuk melakukan operasi penjumlahan, pengurangan, pembagian dan perkalian dibuat dengan cara sederhana. berikut adalah program yang sudah menggunakan method. untuk desain, Anda ikuti saja dengan yang sebelumnya. cukup mengganti source code pada KalkulatorMain.java.



Hasil akhirnya akan sama saja dengan program di atas, tetapi cara kerja yang berbeda.

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
package jhohannespurba.blogspot.com;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;

public class KalkulatorMain extends Activity {

 int n1;
 int n2;

 /** Called when the activity is first created. */
 @Override
 public void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);

  final EditText nilai1 = (EditText) findViewById(R.id.textNilai1);
  final EditText nilai2 = (EditText) findViewById(R.id.textNilai2);
  final TextView viewHasil = (TextView) findViewById(R.id.viewHasil);

  //tambah
  Button tambah = (Button) findViewById(R.id.buttonTambah);
  tambah.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    n1 = Integer.parseInt(nilai1.getText().toString());
    n2 = Integer.parseInt(nilai2.getText().toString());
   
    viewHasil.setText(String.valueOf(tambah(n1, n2)));
   }
  });

  //kurang
  Button kurang = (Button) findViewById(R.id.buttonKurang);
  kurang.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    n1 = Integer.parseInt(nilai1.getText().toString());
    n2 = Integer.parseInt(nilai2.getText().toString());

    viewHasil.setText(String.valueOf(kurang(n1, n2)));
   }
  });

  //kali
  Button kali = (Button) findViewById(R.id.buttonKali);
  kali.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    n1 = Integer.parseInt(nilai1.getText().toString());
    n2 = Integer.parseInt(nilai2.getText().toString());

    viewHasil.setText(String.valueOf(kali(n1, n2)));
   }
  });
  
  //bagi
  Button bagi = (Button) findViewById(R.id.buttonBagi);
  bagi.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View arg0) {
    n1 = Integer.parseInt(nilai1.getText().toString());
    n2 = Integer.parseInt(nilai2.getText().toString());

    viewHasil.setText(String.valueOf(bagi(n1, n2)));
   }
  });
 }

 
 public int tambah(int nilai1, int nilai2) {
  return nilai1 + nilai2;
 }

 public int kurang(int nilai1, int nilai2) {
  return nilai1 - nilai2;
 }

 public int kali(int nilai1, int nilai2) {
  return nilai1 * nilai2;
 }

 public double bagi(int nilai1, int nilai2) {
  return nilai1 / (double) nilai2;
 }
}
Jhohannes H Purba Coding Sederhana May 21, 2012

8 comments:

  1. gak jalan pak.. cuma tampil aja

    ReplyDelete
  2. I really appreciate your professional approach. These are pieces of very useful information that will be of great use for me in future.

    ReplyDelete
  3. saya ingin bertanya, bagaimana membuat perhitungan pada android dengan menghubungkan nfc ?

    ReplyDelete
  4. I saved it as a favorite it to my bookmark site list and will be checking back in the near future. Take a look at my website as well and tell me what you think.

    ReplyDelete
  5. Great article, Thanks for your great information, the content is quiet interesting. I will be waiting for your next post.

    ReplyDelete