Pages

Minggu, 02 September 2012 di 08.57 Diposting oleh jajay jaenudin (jeje) 0 Comments

Kesempatan kali ini saya akan membahas bagaimana cara nya untuk memebuat program sederhana java yaitu kalkulator minimalis. 
TUGAS BONUS

Buatlah sebuah program dengan menggunakan bahasa java dengan  algoritma dan ketentuan berikut ini ,
Program Kalkulator Sederhana
Tools yang digunakan : Teks Editor (Notepad, Wordpad, Notepad++, Komodo, etc)
 
Algoritma
Input
Operand1 operator1 operand2 operator2 … ….operandN  operatorN
Output
Hasil operasi
Contoh :
5 + 3 – 2 + 2
Output
8
  
Tuliskan script berikut :
  1. public class KalkulatorSederhana {
  2.  // deklarasikan variabel bermodifierkan public supaya dapat di modif oleh method-method
  3.  int angka;
  4.  int hasil; 
  5.  String abc = "";
  6. }
  7. // method untuk memproses string abc saat dipanggil ex:prosesFormula("5+2-1");
  8. public void proses(String abc) {
  9.  if(abc.contains(" ")) { // jika string berisi spasi
  10.   abc = abc.replace(" ", ""); // spasi akan di replace dengan char kosong
  11.  }
  12.  char operator[] = new char[abc.length()];
  13.  int rightValue[] = new int[abc.length()];
  14.  char emptyChar = 0;
  15.  String tempat[] = new String[abc.length()];
  16.  int indexOperator = 0, indexRightval = 1;
  17.  
  18.  // membuat proses pengulangan untuk membedakan angka dan operator serta menempatkannya
  19.  for(int loop=0;loop<abc.length();loop++){
  20.   if(abc.charAt(loop) == '0' || abc.charAt(loop) == '1' || abc.charAt(loop) == '2' ||
  21.    abc.charAt(loop) == '3' || abc.charAt(loop) == '4' || abc.charAt(loop) == '5' ||
  22.    abc.charAt(loop) == '6' || abc.charAt(loop) == '7' || abc.charAt(loop) == '8' ||
  23.    abc.charAt(loop) == '9') {
  24.  // jika char pada string abc di index loop berisi angka, maka akan di masukkan ke dalam variabel rightValue
  25.    tempat[indexRightval] = String.valueOf(abc.charAt(loop));
  26.    rightValue[indexRightval] = Integer.parseInt(tempat[indexRightval]);
  27.    indexRightval++;
  28.   } else if(abc.charAt(loop) == '+' || abc.charAt(loop) == '-' ||
  29.      abc.charAt(loop) == '*' || abc.charAt(loop) == '/') {
  30.  // jika char pada string abc di index loop berisi simbol aritmatika, maka akan di masukkan ke dalam variabel operator[]
  31.   operator[IndexO] = abc.charAt(loop);
  32.   IndexO++;
  33.   } else {
  34.     System.out.println("abc " + abc.charAt(loop) + " tidak valid!");
  35.   break;
  36.   }
  37.  }
  38.  // mengambil nilai pertama pada string abc untuk di hitung
  39.  hasil] = Integer.parseInt(tempat[1]);
  40.  int indexNew = 2;
  41.  // membuat proses pengulangan dan menghitung sesuai jumlah operator
  42.  for(int loop=0;loop<operator.length;loop++) {
  43.   switch(operator[loop]) {
  44.    case '+' :
  45.     hasil = hasil+ rightValue[indexNew];
  46.     break;
  47.    case '-' :
  48.     hasil = hasil- rightValue[indexNew];
  49.     break;
  50.    case '*' :
  51.     hasil = hasil* rightValue[indexNew];
  52.     break;
  53.    case '/' :
  54.     hasil = hasil / rightValue[indexNew];
  55.     break;
  56.   }
  57.   indexNew++;
  58.  }
  59.  // method accessor untuk mengakses variabel hasil yang sudah diproses
  60.  public int getHasilproses() {
  61.   return hasil;
  62.  } }
lalu satu class lagi:
  1. // impor class dari package java.io yang digunakan untuk proses input
  2. import java.io.BufferedReader;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5.  
  6. public class KalkulatorSederhana {
  7.  public static void main(String[] args) {
  8.   KalkulatorSederhana= "";
  9.   int hasil;
  10.  
  11.   // membuat obyek dari kelas prosesString      
  12.   proses pr = new proses();
  13.  
  14.   // membuat obyek dari kelas BufferedReader dan InputStreamReader untuk menempatkan inputan
  15.   BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in));
  16.   try{
  17.    System.out.print("Masukan Operator dan Operand : ");
  18.    abc= dataIn.readLine(); // memanggil method untuk memasukkan inputan ke dalam variabel abc
  19.    pr.KalkulatorSederhan(abc); // memanggil method untuk memproses string abc
  20.    System.out.print("Hasil perhitungan  : ");
  21.    System.out.println(pr.getHasil()); // memanggil method untuk mengakses nilai hasil dan menampilkannya
  22.   }catch(IOException ex) {
  23.    System.out.println("Input error!");
  24.   }
  25.  }
  26. }
Kalau  ada yang ingin mendownload :
file yang .jav .java

 Sekian penjelasan dari saya ,mohon maaf bila terjadi banyak sekali kesalahan ,atau penjelasan yang kurang ,karena kesempurnaan hanya milik Allah SWT ..dan saya masih belajar
 
 
 
 
 
 
 
 
 
 

0 Responses so far.

Posting Komentar

    About Me

    Foto Saya
    jajay jaenudin (jeje)
    Lihat profil lengkapku

    Followers