Wednesday, July 2, 2008

Tugas Membuat Program Perpustakaan Sederhana

  • File pertama adalah Book.java
  • File kedua adalah main.java

Pertama kompile terlebih dahulu untuk file Book.java lalu

Kompile file main.java

Akan muncul tampilan sebagai berikut :

Berupa 2 pilihan, pilihan pertama untuk proses peminjaman buku, dengan proses sebagai berikut:

  • Masukkan pilihan anda : isi dengan 1 maka muncul 3 pilihan berupa peminjaman kamus, peminjaman majalah dan peminjaman textbook

  • Untuk peminjaman kamus terdiri dari beberapa jenis kamus dan pilih salah Satu
  • Untuk peminjaman majalah terdiri dari beberapa jenis majalah dan pilih salah Satu
  • Untuk peminjaman textbook terdiri dari beberapa jenis textbook dan pilih salah Satu
  • Sebagai contoh masukkan pilihan 1 maka akan muncul jenis dari kamus yang ada seperti gambar berikut

  • Kemudian pilih kamus yang ingin dipinjam sebagai contoh pilih 2 untuk kamus bahasa jerman, selanjutnya akan muncul informasi dari peminjaman buku seperti jenis buku yang dipinjam, judul buku, tgl pinjam, harga peminjaman dan batas pengembaliannya, berikut screenshootnya


Untuk pilihan Pengembalian buku dengan memilih nomor 2 pada tampilan pertama

  • Selanjutnya isikan informasi peminjaman buku berupa
  • Masukkan Tanggal pinjam isi dengan tanggal saja
  • Masukkan Bulan pinjam isi dengan Bulan saja
  • Masukkan Tahun pinjam isi dengan tahun saja, seperti gambar berikut

  • Selanjutnya isikan informasi pengembalian buku berupa
  • Masukkan Tanggal kembali isi dengan tanggal saja
  • Masukkan Bulan kembali isi dengan Bulan saja
  • Masukkan Tahun kembali isi dengan tahun saja, seperti gambar berikut

  • Selanjutnya tekan enter maka akan muncul jenis buku yang dipinjam dan pilih jenisnya, seperti gambar berikut


  • Selanjutnya tekan enter maka akan muncul informasi pengembalian buku dan harga yang harus dibayar untuk peminjaman buku, jika ada keterlambatan maka akan dihitung sesuai jumlah keterlambatan, berikut screenshootnya

Berikut ini sript untuk Book.java

import java.util.Date;

public class Book {

private String judul;

private String jenis;

private int harga;

private String status;

private Date tanggalPinjam;

public void Book(){

}

public void Book(String judul,String jenis,int harga,String status,Date tanggalPinjam){

this.judul = judul;

this.jenis = jenis;

this.harga = harga;

this.status = status;

this.tanggalPinjam = tanggalPinjam;

}

public String getJudul(){

return judul;

}

public String getJenis(){

return jenis;

}

public int getHarga(){

return harga;

}

public String getStatus(){

return status;

}

public Date getTanggalPinjam(){

return tanggalPinjam;

}

public void setJudul(String judul){

this.judul = judul;

}

public void setJenis(String jenis){

this.jenis = jenis;

}

public void setHarga(int harga){

this.harga = harga;

}

public void setStatus(String status){

this.status = status;

}

public void setTanggalPinjam(Date tanggalPinjam){

this.tanggalPinjam = tanggalPinjam;

}

}

Berikut ini sript untuk main.java

import java.io.BufferedReader;

import java.io.IOException;

import java.io.InputStreamReader;

import java.text.DateFormat;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

import com.sun.org.apache.xerces.internal.impl.xpath.regex.ParseException;

public class main {

/**

* @param args

* @throws IOException

* @throws ParseException

* @throws java.text.ParseException

*/

public static void main(String[] args) throws ParseException, IOException, java.text.ParseException {

//Menginisialisasi String

boolean menuValid = false;

while(menuValid == false){

System.out.println("MENU APPLIKASI PERPUSTAKAAN");

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

System.out.println("2. Pengembalian Buku");

System.out.print("Masukkan Pilihan Anda : ");

String menu = "";

InputStreamReader isr = new InputStreamReader(System.in);

BufferedReader br = new BufferedReader(isr);

menu = br.readLine();

if(menu.equals("1")){

menuPeminjaman(Integer.valueOf(menu));

menuValid = true;

}

else if(menu.equals("2")){

menupengembalian();

menuValid = true;

}

else{

System.out.println("Pilihan yg Anda Masukkan Salah !");

}

}

}

// pengembalian buku

public static void menupengembalian() throws IOException, ParseException, java.text.ParseException{

InputStreamReader isr = new InputStreamReader(System.in);

BufferedReader br = new BufferedReader(isr);

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");

Date tanggalPinjam = null;

String ptanggal="",pbulan="",ptahun="",ktanggal="",kbulan="",ktahun="";

String jenisBuku = "";

Date pinjam = null, kembali = null;

int selisihHari=0, biaya =0;

int dendaHari;

System.out.println();

System.out.println("PENGEMBALIAN BUKU");

System.out.print("Masukkan Tanggal Pinjam: ");

ptanggal = br.readLine();

System.out.print("Masukkan Bulan Pinjam: ");

pbulan = br.readLine();

System.out.print("Masukkan Tahun Pinjam: ");

ptahun = br.readLine();

System.out.println();

System.out.print("Masukkan Tanggal Kembali: ");

ktanggal = br.readLine();

System.out.print("Masukkan Bulan Kembali: ");

kbulan = br.readLine();

System.out.print("Masukkan Tahun Kembali: ");

ktahun = br.readLine();

System.out.println();

System.out.println(); //pindah baris

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

System.out.println("kode : 1 => Jenis Kamus");

System.out.println("kode : 2 => Jenis Majalah");

System.out.println("kode : 3 => Jenis Text Book");

System.out.print("Masukkan kode Jenis Buku: ");

jenisBuku = br.readLine();

pinjam = df.parse(ptahun+"-"+pbulan+"-"+ptanggal);

kembali = df.parse(ktahun+"-"+kbulan+"-"+ktanggal);

selisihHari = kembali.getDate()-pinjam.getDate();

dendaHari=selisihHari-7;

if(dendaHari >= 1){ //terkena denda

if(jenisBuku.equals("1")){

biaya = 3000 + (dendaHari*500);

}

else if(jenisBuku.equals("2")){

biaya = 1000 + (dendaHari*500);

}

else{

biaya = 2000 + (dendaHari*500);

}

}

else{ //tidak terkena denda

if(jenisBuku.equals("1")){

biaya = 3000;

}

else if(jenisBuku.equals("2")){

biaya = 1000;

}

else{

biaya = 2000;

}

}

System.out.println();

System.out.println("Tanggal Pinjam : "+pinjam);

System.out.println("Tanggal Kembali : "+kembali);

System.out.println("lama pinjam : "+selisihHari+" hari");

System.out.println("Lama Denda : "+dendaHari+" hari");

System.out.println();

System.out.println("Biaya yang harus anda keluarkan adalah: "+biaya);

}

// menu peminjaman buku

public static void menuPeminjaman(int pilihan) throws IOException, ParseException, java.text.ParseException{

String menu = "";

boolean validMenu = false;

while(validMenu == false){

System.out.println();

System.out.println("MENU APPLIKASI");

System.out.println("1. Untuk Meminjam Kamus");

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

System.out.println("3. Untuk Meminjam Text Book");

System.out.print("Masukkan Pilihan Anda : ");

System.out.println();

InputStreamReader isr = new InputStreamReader(System.in);

BufferedReader br = new BufferedReader(isr);

menu = br.readLine();

Book book = null;

if(menu.equals("1")){

book = menuPilihanSatu();

validMenu = true;

}

else if(menu.equals("2")){

book = menuPilihanDua();

validMenu = true;

}

else if(menu.equals("3")){

book = menuPilihanTiga();

validMenu = true;

}

else{

System.out.println("Pilihan yg Anda Masukkan Salah !");

}

if(validMenu == true){

System.out.println("Jenis Buku yang dipinjam : "+book.getJenis());

System.out.println("Judul Buku: "+book.getJudul());

System.out.println("Dipinjam tanggal : "+book.getTanggalPinjam());

System.out.println("Harga pinjaman : "+book.getHarga());

Date kembali = new Date();

kembali = book.getTanggalPinjam();

kembali.setDate((book.getTanggalPinjam().getDate())+7);

System.out.println("Batas pengembalian buku : "+kembali);

}

}

}

// menu untuk pemilihan kamus

public static Book menuPilihanSatu() throws IOException, ParseException, java.text.ParseException{

String DATE_FORMAT_NOW = "yyyy-MM-dd";

Calendar cal = Calendar.getInstance();

SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT_NOW);

String menu = "";

Book result = new Book();

boolean menuValid = false;

while(menuValid == false){

System.out.println("Daftar Kamus : ");

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

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

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

System.out.print("Masukkan Pilihan Anda : ");

InputStreamReader isr = new InputStreamReader(System.in);

BufferedReader br = new BufferedReader(isr);

menu = br.readLine();

if(menu.equals("1")){

result.setJudul("Kamus Bahasa Rusia");

menuValid = true;

}

else if(menu.equals("2")){

result.setJudul("Kamus Bahasa Jerman");

menuValid = true;

}

else if(menu.equals("3")){

result.setJudul("Kamus Bahasa Yunani");

menuValid = true;

}

else {

System.out.println("Menu yang anda pilih salah !");

}

if(menuValid == true){

result.setJenis("Kamus");

result.setTanggalPinjam(sdf.parse(sdf.format(cal.getTime())));

result.setStatus("dipinjam");

result.setHarga(3000);

}

}

return result;

}

// menu untuk pemilihan majalah

public static Book menuPilihanDua() throws IOException, ParseException, java.text.ParseException{

String menu = "";

Book book = new Book();

String DATE_FORMAT_NOW = "yyyy-MM-dd HH:mm:ss";

Calendar cal = Calendar.getInstance();

SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT_NOW);

boolean menuValid = false;

while(menuValid == false){

System.out.println("Daftar Majalah : ");

System.out.println("1. Majalah PC PLUS");

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

System.out.println("3. Majalah Music Books Collection");

System.out.print("Masukkan Pilihan Anda : ");

InputStreamReader isr = new InputStreamReader(System.in);

BufferedReader br = new BufferedReader(isr);

menu = br.readLine();

if(menu.equals("1")){

book.setJudul("Majalah PC PLUS");

menuValid = true;

}

else if(menu.equals("2")){

book.setJudul("Majalah Sport");

menuValid = true;

}

else if(menu.equals("3")){

book.setJudul("Majalah Music Book Collection");

menuValid = true;

}

else{

System.out.println("Menu yang anda pilih salah !");

}

if(menuValid == true){

book.setJenis("Majalah");

book.setTanggalPinjam(sdf.parse(sdf.format(cal.getTime())));

book.setStatus("dipinjam");

book.setHarga(1000);

}

}

return book;

}

// menu untuk pemilihan text books

public static Book menuPilihanTiga() throws IOException, ParseException, java.text.ParseException{

Book result = new Book();

String menu = "";

String DATE_FORMAT_NOW = "yyyy-MM-dd HH:mm:ss";

Calendar cal = Calendar.getInstance();

SimpleDateFormat sdf = new SimpleDateFormat(DATE_FORMAT_NOW);

boolean menuValid = false;

while(menuValid == false){

System.out.println("Daftar Text Books : ");

System.out.println("1. Database System Concept");

System.out.println("2. Applying UML And Pattern");

System.out.println("3. Networking Principle");

System.out.println("4. Aljabar Linier");

System.out.print("Masukkan Pilihan Anda : ");

InputStreamReader isr = new InputStreamReader(System.in);

BufferedReader br = new BufferedReader(isr);

menu = br.readLine();

if(menu.equals("1")){

result.setJudul("Database System Concept");

menuValid = true;

}

else if(menu.equals("2")){

result.setJudul("Applying UML And Pattern");

menuValid = true;

}

else if(menu.equals("3")){

result.setJudul("Networking Principle");

menuValid = true;

}

else if(menu.equals("4")){

result.setJudul("Networking Principle");

menuValid = true;

}

else{

System.out.println("Menu yang anda pilih salah !");

}

if(menuValid == true){

result.setJenis("Text Book");

result.setTanggalPinjam(sdf.parse(sdf.format(cal.getTime())));

result.setStatus("dipinjam");

result.setHarga(2000);

}

}

return result;

}

}

No comments: