Perpustakaan NON GUI

Sebelum class Perpustakaan dibuat buat class baru dengan nama InputKey

Kemudian pada class InputKey ketik listing berikut:

 

public class InputKey {

 public static String inputString(){

      int karakter; String str =""; boolean selesai = false;

          while(!selesai){

try{

      karakter = System.in.read();

      if(karakter < 0 || (char) karakter == '\n') selesai = true;

       else if ((char) karakter != '\r') str = str + (char) karakter;

}catch(java.io.IOException e){

      System.err.println("Ada kesalahan");

      selesai = true;

}

 

Kemudian ketik listing untuk membuat applikasi perpustakaannya sebagai berikut:

 

public class PerpustakaanNonGUI {

static String[] kategori=new String[5];

static String[] ket=new String[5];

static int[] hsewa=new int[5];

int telat;

static double [] subtot=new double[5];

static double denda,total=0;

 

void daftarBuku(){

System.out.println(" DAFTAR BUKU BACAAN");

System.out.println("---------------------------------");

System.out.println("1. La Tahzan For Jomblo");

System.out.println("2. Mencari Mutiara di Dasar Hati");

System.out.println("3. Gue Never Die");

System.out.println("4. Panggilan Rindu dari Langit");

System.out.println("---------------------------------");

}

 

void daftarMajalah(){

System.out.println(" DAFTAR MAJALAH");

System.out.println("---------------------------------");

System.out.println("1. Sabili");

System.out.println("2. Tarbawi");

System.out.println("3. Al Fath");

System.out.println("---------------------------------");

}

 

void daftarKamus(){

System.out.println(" DAFTAR Kamus");

System.out.println("---------------------------------");

System.out.println("1. Kamus Bahasa Jepang");

System.out.println("2. Kamus Bahasa Inggris");

System.out.println("3. Kamus Bahasa Gaul");

System.out.println("---------------------------------");

}

public static void main(String[] args){

String lagi="Y";

 

while(lagi.equalsIgnoreCase("Y")){ //perulangan untuk Tambah pinjam berikutnya

System.out.println(" PEMINJAMAN BUKU PERPUSTAKAAN");

System.out.println(" PERPUSTAKAAN MUSLIMAH-QYEEN");

System.out.println("------------------------------------------------------");

System.out.println(" Kategori Buku ");

System.out.println("1. Buku ");

System.out.println("2. Majalah");

System.out.println("3. Kamus");

System.out.println("---------------------------------");

System.out.println();

System.out.print("Masukkan Id Anggota : ");

String id=InputKey.inputString(); //Diperlukan Class InputKey

System.out.print("Masukkan Nama Anggota : "); //untuk input Nilai

String nama=InputKey.inputString();

System.out.println("---------------------------------");

System.out.print("Masukkan Jumlah Peminjaman : ");

String pinjam=InputKey.inputString();

int j=Integer.parseInt(pinjam);

System.out.println();

 

for (int i=1;i<=j;i++){ //Perulangan untuk peminjaman buku

System.out.println("Peminjaman ke "+i);

System.out.print("Silahkan Pilih Kategori : ");

String spilih=InputKey.inputString();

int pilih=Integer.parseInt(spilih);

//Seleksi untuk pemilihan Kategori Buku

switch(pilih){

case 1:{

kategori[i]="Buku";

hsewa[i]=2000;

//Pembuatan Objeck untuk mencetak daftar Buku

PerpustakaanNonGUI cetakBuku=new PerpustakaanNonGUI();

cetakBuku.daftarBuku();

System.out.print("Pilih Judul Buku[1/2/3] : ");

String sJudul=InputKey.inputString();

int judul=Integer.parseInt(sJudul);

 

if(judul==1){ //Seleksi untuk judul Kategori Buku

ket[i]="La Tahzan for Jomblo";

}else if(judul==2) {

ket[i]="Mencari Mutiara di Dasar Hati";

}else if(judul==3){

ket[i]="Gue Never Die";

}else

ket[i]="Panggilan Rindu dari Langit";

}

break;

case 2:{

kategori[i]="Majalah";

hsewa[i]=1000;

//Pembuatan Objeck untuk mencetak daftar Majalah

PerpustakaanNonGUI cetakMajalah=new PerpustakaanNonGUI();

cetakMajalah.daftarMajalah();

System.out.print("Pilih Judul Buku[1/2/3] : ");

String smJudul=InputKey.inputString();

int mjudul=Integer.parseInt(smJudul);

 

if(mjudul==1){ //Seleksi untuk judul Majalah

ket[i]="Sabili";

}else if(mjudul==2) {

ket[i]="Tarbawi";

}else{

ket[i]="Al Fath";

}

}

break;

case 3:{

kategori[i]="Kamus";

hsewa[i]=3000;

//Pembuatan Objeck untuk mencetak daftar Kamus

PerpustakaanNonGUI cetakKamus=new PerpustakaanNonGUI();

cetakKamus.daftarKamus();

System.out.print("Pilih Kode Buku[1/2/3] : ");

String skJudul=InputKey.inputString();

int kjudul=Integer.parseInt(skJudul);

 

if(kjudul==1){ //Seleksi untuk judul Kategori Kamus

ket[i]="Kamus Bahasa Jepang";

}else if(kjudul==2) {

ket[i]="Kamus Bahasa Inggris";

}else{

ket[i]="Kamus Bahasa Gaul";

}

}

break;

default:

}

System.out.println("Kategori "+kategori[i]+" Judul "+ket[i]);

}

System.out.print ("Lama Pinjam [Mingguan]: ");

String sLamaPinjam=InputKey.inputString();

int lamaPinjam=Integer.parseInt(sLamaPinjam);

System.out.println();

System.out.print ("Lama Pengembalian [Dalam harian] : ");

String sLamaBalik=InputKey.inputString();

int lamaBalik=Integer.parseInt(sLamaBalik);

System.out.println();

System.out.println();

 

//Menghitung denda Keterlambatan

int telat=lamaBalik-(lamaPinjam*7);

if (lamaBalik<=(lamaPinjam*7)){

denda=0;

}else{

denda=(telat*500);

}

for(int i=1;i<=j;i++){ //perulangan untuk menghitung total bayar sewa

subtot[i]=hsewa[i]*lamaPinjam;

total=total+subtot[i];

}

total=total+denda;

 

//Menampilkan data peminjaman Buku pada perpustakaan sederhana

System.out.println(" DATA PEMINJAMAN BUKU ");

System.out.println("===============================================");

System.out.println();

System.out.println("Id Anggota : "+id);

System.out.println("Nama Anggota : "+nama);

System.out.println();

System.out.println("===============================================");

System.out.println(" No Judul Harga Sewa Jumlah Bayar ");

System.out.println("===============================================");

for (int i=1;i<=j;++i){

System.out.println(" "+i+" "+ket[i]+" "+hsewa[i]+" "+subtot[i]);

}

System.out.println("------------------------------------------------------");

System.out.println("Lama Pinjam :"+lamaPinjam*7+"("+lamaPinjam+" Minggu)");

System.out.println("Lama Pengembalian :"+lamaBalik+"(Telat :"+telat+" Hari)");

System.out.println("Biaya Denda :Rp "+denda);

System.out.println("Biaya Seluruhnya :Rp "+total);

System.out.println("-------------------------------------------------------");

System.out.println();

System.out.println(" --:TERIMA KASIH ATAS KUNJUNGANNYA:--");

System.out.println();

 

System.out.print("Input Lagi [Y/T] ? ");

lagi=InputKey.inputString();

}

}

}

}

return str;

}

}