Minggu, 02 September 2012

Kalkulator Sederhana

          Halo semuanya, kali ada program sederhana lagi yaitu aplikasi Kalkulator Sederhana,Namun karena aplikasi Bilangan Positif dan Negatif kemarin sudah dibahas panjang lebar kali ini akan tidak akan dibahas terlalu rinci karena saya yakin Bloger Mania yang setia mengunjungi blog ini pasti sudah cukup mengerti akan cara penulisan dan maksud penulisan script pada java   ^^  .

          Oke kita mulai saja, disini sama seperti kemarin kita akan menggunakan dua class , sudah tahu bukan apa saja fungsi masing-masing class?

ini algoritmanya


Script Class pertama yang berisi berbagai perintah proses

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;


public class CalculatorSederhana {
    public void Proses() {
        BufferedReader dataIn = new BufferedReader(new InputStreamReader(System.in));

        String in = "";
        // penggunaan Try-Catch untuk menangani kemungkinan keadaan yang tidak sesuai yang dapat menyebabkan error
        try{
            System.out.println("Aplikasi Calculator Sederhana");
            System.out.println("Format Input Berupa Bil1<spasi>operator<spasi>bil2 dan seterusnya maksimal Bil5 Contoh 5+6+8-9/5 ");
            System.out.println("Masukan 5 Bilangan Dibawah ini :");
            in = dataIn.readLine();
        }catch(IOException e){
            System.out.print("Input Keyboard Salah!");
        }
       
        
        String all[] = in.split(" ");                     //in.Spit sebagai perintah yang digunakan untuk memisahkan data berdasarkan spasi
        String angka[] = new String[5];
        String operator[] = new String[4];
        double vardou[] = new double[5];                 //perintah dipinggir digunakan untuk mengconvert data dari string ke double
        int idxangka = 0;                                  //hasil dengan jumlah angka
        int idxop = 0 ;                                  //hasil dengan jumlah operator
        int idxvardou = 1;
        
        for(int i =0;i<all.length;i++)
        {
            if((all[i].equals("+")) || (all[i].equals("-")) || (all[i].equals("*")) || (all[i].equals("/")))
            {
                operator[idxop] = all[i];
                idxop++;
            }else
            {
                angka[idxangka] = all[i];
                idxangka++;
            }
        }
        
        double hasil = 0;
        
        for(int i=0;i<angka.length;i++)
        {//dibawah ini adalah perintah untuk mengconvert data dari string ke double
            vardou[i] = Double.parseDouble(angka[i]);
        }
        
        hasil = vardou[0];
       
        for(int l =0 ; l < operator.length;l++)
        {
            if(operator[l].equals("+")) //jika operator yang dimasukan berupa +
            {
                hasil = hasil + vardou[idxvardou];
            } 
               
            else if (operator[l].equals("-")) //jika operator yang dimasukan berupa -
            {
                hasil = hasil - vardou[idxvardou];
            }
           
            else if (operator[l].equals("*")) //jika operator yang dimasukan berupa *
            {
                hasil = hasil * vardou[idxvardou];
            }
           
            else if (operator[l].equals("/")) //jika operator yang dimasukan berupa /
            {
                hasil = hasil / vardou[idxvardou];
            }
            idxvardou++;
        }
        
        System.out.println("Hasilnya Adalah : " +hasil);    
    }
}


Class Kedua

 public class CalcultorTesting {
        public static void main(String[] args) {
        CalculatorSederhana tampil = new CalculatorSederhana();//memanggil class Calculator
        tampil.Proses();                                                     //memanggil method yang ada di class Calculator
    }
}


dan ini Dokumentasinya ^^
Input dan Outputnya






sciptnya










Link download (Class dan Jar )
http://www.sendspace.com/file/6ktnkm

Sabtu, 01 September 2012

Menghitung Jumlah Bilangan Positif dan Negatif Dengan Program Java Sederhana

          Pada kali ini saya akan menjelaskan sebuah program Java sederhana , yaitu menghitung jumlah bilangan positif dan bilangan negatif dari data yang sudah diinputkan oleh user. Programnya cukup simple,,oke Let's Begin !!  



Ini dia gambaran / Algoritma programnya



       Langkah yang pertama kita pecahkan dulu masalahnya,Apa sih yang membedakan antara bilangan positif dan bilangan negatif ?  Hayoo,pelajaran kelas berapa nih? Secara logika aja , bilangan negatif adalah bilangan yang nilainya lebih kecil dari pada 0 dan bilangan positif  nilainya lebih besar dari pada 0 ,oleh karena angka 0 berada di antara keduanya kita jadikan 0 sebagai acuan untuk menyaring dan memisahkan bilangan Positif dan Negatif dari data yang diinputkan dengan menggunakan script seleksi.

Secara sederhana  penyeleksian akan seperti berikut :

Gambar diatas dapat di artikan jika bilangan yang di input kan lebih besar dari pada 0, maka data tersebut akan dipindahkan dari variabel bernama bilangan ke variabel bernama BilPositif , sedangkan bila tidak lebih dari 0 maka data akan di pindahkan dari  variabel bernama bilangan ke variabel bernama BelNegatif. Bagaimana sudah terbayang programnya akan seperti apa? simpel bukan?

kita langsung cek saja scriptnya , :)

          Disini kita akan membagi menjadi 2 class,class yang pertama berisi script proses pengolahan sedangkan class yang kedua sebagai main yang akan mengetest / atau menjalankan program sederhana tersebut.
           Para blogger mania tak usah takut tidak akan mengerti script ini karena scriptnya sudah dilengkapi comment yang dibuat se-interaktif mungkin agar semua pembaca dapat memahaminya dengan jelas .

1.Script Class pertama


 import java.util.Scanner;


public class Jml_bilanganPositif_dan_negatif { 

/*Dibawah ini merupakan pendeklarasian dan penginisialisaian variabel
  variabel bilangan,bilpositif,bilnegatif diberi indeks array 1 dimensi dengan max length 6
  bertipe integer , Kenapa max lengthnya hanya 6 saja ? karena jumlah data inputan yang akan dimasukan
  hanya akan ada 5 angka yg akan dimulai dari indeks 1 sedangkan indeks array dimulai dari 0 */
   
   
   
  int[] bilangan = new int[6];   // variabel bilangan digunakan untuk menyimpan data sementara sebelum data 
                                                              diseleksi
  int[] bilpositif = new int[6]; // variabel bilpositif adalah variabel yang akan digunakan untuk menampung data
                                                             bilangan  positif setelah di seleksi
  int[] bilnegatif = new int[6]; // variabel bilnegatif adalah variabel yang akan digunakan untuk menampung data
                                                              bilangan negatif setelah di seleksi
  
  /*Dibawah ini merupakan penginstansiasian beberapa method yang memiliki tugas masing-masing  method input memiliki tugas dalam memproses data masukan yag akan diolah,method proses bertugas untuk mengolah data yang sudah di proses di method input,sedangkan method output  berfungsi untuk menampilkan data hasil olahan dari method proses */
   
public void input(){
        Scanner baca = new Scanner(System.in);
       
        System.out.println("Masukan 5 Bilangan Positif atau Negatif (0 tidak termasuk)");
      
         
// Dibawah ini merupakan perintah looping (pengulangan) yaitu mengulang perintah masukan bilangan sebanyak 5 kali


       for(int i=1; i<=5; i++){
            System.out.print("Masukan bilangan ke "+i+": ");
            bilangan[i] = baca.nextInt();

 //kenapa disitu tertulis Bilangan[i]? apa arti [i] pada variabel tersebut ?
  /* Ingat bukan bahwa varibel bilangan itu adalah array 1 dimensi  perintah [i] menyatakan bahwa data yang dimasukan pada variabel bilangan  akan disimpan pada nomor indeks array yang sesuai dengan nilai pada variabel i */
        }
    }


//dibawah ini adalah perintah penyelaksian dengan mengunakan If-Else
//Jika bilangan nilainya lebih dari 0 maka akan masuk pada variabel bilpositif dan sebaliknya      
   

    public void proses(){
        for(int i=1; i<=5; i++){
           if(bilangan[i]>0){
                bilpositif[i] = bilangan[i];
            }
            else{
                bilnegatif[i] = bilangan[i];
            }
        }
    }
   
    public void output(){
     
        System.out.println("\nHasil Seleksi");
        System.out.print("Jumlah bilangan postitif : "); 


 //di bawah ini merupakan perintah pengulangan untuk menghitung jumlh indeks variabel
 //Jumlah billangan positif dan negatif ditentukan dari banyaknya indeks yang terisi dari masing" variabel

//variabel di bawah ini berfungsi untuk menghitung jumlah indeks array yang terisi oleh bilangan
        int x=0;   
  
/*pada proses for dan if di bawah ini secara umum berarti jika nilai pada variabel  bilpositif dengan indeks 1 tidak sama dengan nol maka nilai x dinaikan 1 (x++),  kemudian proses akan diulangi lagi pada indeks ke 2,3,4,dan 5 sehingga akan di dapat  ada berapa bilangan positif pada variabel bilpositif */
              



           for(int i=1; i<=5; i++){
            if(bilpositif[i] != 0){  
                x++;
            }
        }
        System.out.println(x);
       
        System.out.print("Jumlah bilangan negatif : ");
        int n=0;
        for(int i=1; i<=5; i++){
            if(bilnegatif[i] != 0){
                n++;
            }
        }
        System.out.println(n);
    }
    //Dibawah inilah baru main processnya menampilkan semua nilai / perintah yang  terdapat dalam 3 method tadi
    public static void main(String[] args) {
       Jml_bilanganPositif_dan_negatif out = new Jml_bilanganPositif_dan_negatif();
        out.input();
        out.proses();
        out.output();
    }
}







2.Class Kedua
          public class Jml_Positif_Negatif_Test {
 public static void main(String[] args) {
Jml_bilanganPositif_dan_negatif outl= new Jml_bilanganPositif_dan_negatif();
outl.input();
outl.proses();
outl.output();
}
}


Dokumentasi Program

- Input





-Proses(script)










-output





Link Download (Klik lalu pilih "Klik Here for start download from sendspace")

1.Class : http://www.sendspace.com/file/fwxxgf
2.Jar    :  http://www.sendspace.com/file/kv0iaf

Terimakasih Atas Kunjungannya    b^^d