Laman

Jumat, 31 Agustus 2012

Program Menentukan Jumlah Bilangan Positif dan Negatif (Java)

Kali ini saya ingin berbagi mengenai Program Java yaitu Program untuk menentukan jumlah Bilangan Positif dan Negatif. Poin yang ditekankan di program ini yaitu Penggunaan Class Library untuk Input dari Keyboard dan Penggunaan Struktur Kontrol (Conditional dan Looping)
Algoritma dari program ini yaitu :

Pertama kita buat sebuah project dengan 1 main class dan 1 library class.


Pertama di library class kita deklarasikan tipe data yang akan digunakan dalam pemprosesan program.
int jml_bilpositif = 0, jml_bilnegatif = 0;

Kemudian masih di class library kita buat method untuk proses seleksi bilangan. Untuk seleksinya disini kita gunakan Struktur Kontrol IF-ELSE.
String seleksiBil(int bil){
        if (bil > 0) {return "Positif";}
        else if (bil < 0) {return "Negatif";}
        else return "Netral";
    }
 Lalu prosedur untuk proses penjumlahan bilangan.
public void hitungBil(String Bilangan){
        if ("Positif".equals(Bilangan)) {jml_bilpositif++;}
        else if ("Negatif".equals(Bilangan)) {jml_bilnegatif++;}
    }
Dan terakhir prosedur untuk menampilkan output pada program ketika program dijalankan.
public void outputAll(){
     System.out.println("Jumlah Bilangan Positif : " + jml_bilpositif);
     System.out.println("Jumlah Bilangan Negatif : " + jml_bilnegatif);
Sekarang kita mulai mengetikkan coding di main class. Pertama kita akan menginstansiasi class library di coding main class.
 library lib = new library();
Lalu  kita deklarasikan variable-variable nya.
 int jmlBil = 0, inputBil = 0;
 String Bilangan;
Kemudian kita mulai langkah-langkah untuk mendapatkan input dari keyboard. Pada bagian ini kita akan menggunakan class BufferedReader yang berada di package java.io untuk mendapatkan input dari keyboard.

Kita akan menambahkan pernyataan ini di paling atas code yang ada di main class.
import java.io.*;
Pernyataan diatas memungkinkan program untuk mengeluarkan semua class yang ada di package dan selanjutnya kita bisa menggunakan class-class tersebut dalam program kita.

Kemudian kita tambahkan statement berikut.
  BufferedReader buff = new BufferedReader(
                new InputStreamReader(System.in));
       
        System.out.println("Jumlah Bilangan : ");
       
        try {
            jmlBil = Integer.parseInt(buff.readLine());
        } catch (IOException e) {
            System.out.println("Error!");
        }
Statement tersebut berupa instansiasi objek buff dari BufferedReader dan penggunaan try-catch untuk menggunakan method readLine() dari BufferedReader untuk mendapatkan input dari user.

Perintah di dalam try { ... } adalah perintah yang kita ingin jalankan pada situasi yang "mungkin" tidak berhasil.

Parameter pada catch, yaitu IOException adalah jenis kesalahan yang ingin kita tangkap. Dalam hal ini kita ingin menangkap adanya kesalahan IO (Input-Output), yaitu kesalahan yang bertipe IOException.

Perintah di dalam catch { ... } adalah perintah yang akan dilakukan apabila kesalahan ditangkap. Jika tidak ada kesalahan IO yang ditemukan, maka bagian ini tidak akan dijalankan.

Kemudian kita mulai proses pengulangan dengan menggunakan Struktur Kontrol FOR.
for(int i=0; i<jmlBil; i++){
    System.out.println("Bilangan ke " + (i+1) + " : ");   
    try {
      inputBil = Integer.parseInt(buff.readLine());
    } catch (IOException e) {
      System.out.println("Error!");
    }
Dan terakhir kita melakukan pemanggilan method-method yang ada di class library untuk menampilkan output dari program.
Bilangan = lib.seleksiBil(inputBil);
lib.hitungBil(Bilangan);
lib.outputAll();
Coding:
PositifNegatif.java
package positifnegatif;
import java.io.*;

public class PositifNegatif {
public static void main(String[] args) {        
//Instansiasi class thrlib
library lib = new library();    
//Deklarasi variable        
int jmlBil = 0, inputBil = 0;        
String Bilangan; 
//Instansiasi untuk input        
BufferedReader buff = new BufferedReader(                
    new InputStreamReader(System.in));
    System.out.println("Jumlah Bilangan : ");
try {            
    jmlBil = Integer.parseInt(buff.readLine());        
} catch (IOException e) {
    System.out.println("Error!");
}       
//Proses Pengulangan untuk input dari user        
for(int i=0; i<jmlBil; i++){
    System.out.println("Bilangan ke " + (i+1) + " : ");
try {
    inputBil = Integer.parseInt(buff.readLine());        
} catch (IOException e) {
    System.out.println("Error!");
}
//Pemanggilan method hasil seleksi di library
        Bilangan = lib.seleksiBil(inputBil);        
//Pemanggilan method hasil penghitungan bilangan di library
        lib.hitungBil(Bilangan);
    }
//Output Program
        lib.outputAll();
    }
    }
library.java
package positifnegatif;
public class library { 
int jml_bilpositif = 0, jml_bilnegatif = 0; 
//Method Proses Seleksi Bilangan (Positif/Negatif)
    String seleksiBil(int bil){
        if (bil > 0) {return "Positif";}
        else if (bil < 0) {return "Negatif";}
        else return "Netral";
    } 
//Method Proses Penjumlahan Bilangan (Positif/Negatif)
public void hitungBil(String Bilangan){
if ("Positif".equals(Bilangan)) {jml_bilpositif++;}         
else if ("Negatif".equals(Bilangan)) {jml_bilnegatif++;}
    } 
//Method untuk output dari Program
public void outputAll(){ 
    System.out.println("Jumlah Bilangan Positif : " + jml_bilpositif); 
    System.out.println("Jumlah Bilangan Negatif : " + jml_bilnegatif);
}
}

Hasil Running:


File.
DOWNLOAD

Jika kurang jelas silahkan tanyakan melalui komentar. Terimakasih.

Tidak ada komentar:

Poskan Komentar