Kamis, 04 Januari 2018

, ,

PEMROGRAMAN LANJUT BAB 2 : CONSRUCTOR DAN INSTANCE METHOD

Laporan Praktikum Pemrograman Lanjut Bab 2 Fakultas Ilmu Komputer Universitas Brawijaya 2016/2017

Soal :
Dari soal bab 1, dalam class-class yang terlibat di studi kasus tersebut, implementasikan penggunaan constructor dan tambahkan beberapa method untuk melakukan operasi dibawah:
1.      pencarian buku berdasarkan kategori, penulis, maupun judul buku dan tampilkan
hasil pencariannya (tangani jika data tidak ditemukan);
2.     input detail buku kedalam kategori tertentu, dan tidak boleh ada judul buku yang
sama dalam satu kategori;
3.     menambahkan kategori buku di sistem perpustakaan, dan tidak ada kategori yang
sama;
4.     tampilkan semua kategori buku beserta buku-buku yang ada dalam kategori

tersebut.

Source code :
Class ClassData
package bab2constructordaninstancemethod;

public class ClassData {

    private String author;
    private String year;
    private String title;
    private int code;
    String Buku[][] = {{"Agama", "Sosiologi Agama", "Siti Hasna", "2007"},
    {"Agama", "Psikologi Agama", "Salma Annisa", "2010"},
    {"Agama", "Sejarah Hidup Muhammad", "Muhammad Husain Haekal", "2009"},
    {"Agama", "Kebudayaan & Agama", "DR. Budi Susanto SJ", "2013"},
    {"Agama", "Pluralitas Agama", "Dr. Nurcholis Madjid", "2010"},
    {"Agama", "Sosiologi Agama", "Dr. Zuly Qodir", "2008"},
    {"Fiksi", "Ketika Tuhan Jatuh Cinta", "Wahyu Sujani", "2011"},
    {"Fiksi", "Pelukis Pagi", "Rino Rain", "2014"},
    {"Fiksi", "Love & Heart", "Loryta Choi", "2016"},
    {"Fiksi", "Jalan Cinta Para Pejuang", "Salim A.", "2009"},
    {"Fiksi", "Perahu Kertas", "Dee", "2012"},
    {"Filsafat", "Filsafat Islam", "Haidar Bagir", "2010"},
    {"Filsafat", "Sejarah Tuhan", "Karen Armstrong", "2011"},
    {"Filsafat", "Masa Depan Tuhan", "Karen Armstrong", "2013"},
    {"Filsafat", "Tren Pluralisme", "Anis Malik", "2003"},
    {"Filsafat", "Kembali ke Masa Depan", "Ziauddin Sardar", "2012"},
    {"Politik", "Politik Kain Timur", "Haryanto", "2009"},
    {"Politik", "Politik Kuasa Media", "Noam Chomsky", "2014"},
    {"Politik", "Politik Pendidikan", "Paulo Freire", "2015"},
    {"Politik", "Politik Harapan", "Ani Soetjipto", "2008"},
    {"Politik", "Ilmu Politik", "Prof. Dr. J.M. Papasi", "2013"},
    {"Psikologi", "Psikologi Pendidikan", "Mahmud", "2005"},
    {"Psikologi", "Psikologi Klinis", "Norman D.", "2016"},
    {"Psikologi", "Psikologi Kerja", "Pandji A.", "2013"},
    {"Psikologi", "Psikologi Remaja", "Sarwono L.", "2012"},
    {"Psikologi", "Psikologi Sosial", "Yeni Wijaya", "2011"},
    {"Sejarah", "Sejarah dan Peradaban Islam", "Badri Yatim", "2004"},
    {"Sejarah", "Pengantar Ilmu Antropologi", "Koentjaningrat", "2000"},
    {"Sejarah", "Metodologi Sejarah", "Kuntowijoyo", "2003"},
    {"Sejarah", "Sejarah Islam Klasik", "Musyrifah S.", "2004"},
    {"Sejarah", "Nuansa-Nuansa Peradaban", "Muji S.", "2010"},
    {"Teknologi", "Teknologi Informasi", "Sinta W.", "2013"},
    {"Teknologi", "DDoS", "Bisri A.", "2015"},
    {"Teknologi", "Big Data", "Akbar Sentosa", "2015"},
    {"Teknologi", "X Code", "Monita Sandra", "2013"},
    {"Teknologi", "IT: The Paradigm", "Sara I.A.", "2011"},
    {"", "", "", ""},
    {"", "", "", ""},
    {"", "", "", ""},
    {"", "", "", ""}};

    public void setBukbar(String a, String b, String c, String d, int e) {
        Buku[Buku.length - e][0] = a;
        Buku[Buku.length - e][1] = b;
        Buku[Buku.length - e][2] = c;
        Buku[Buku.length - e][3] = d;
    }

    public void display(int p) {
        if (p == 1) {
            System.out.println("Kategori Buku :");
        }
        if (p == 2) {
            System.out.println("Nama Penulis Buku :");
        }
        if (p == 3) {
            System.out.println("Tahun Terbit Buku :");
        }
        if (p == 4) {
            System.out.println("Judul Buku :");
        }
        for (int i = 0, j = 0; i < Buku.length - 1; i++) {
            if (Buku[i][p - 1].endsWith(Buku[i + 1][p - 1])) {
                continue;
            }
            j++;
            System.out.println(j + "." + Buku[i][p - 1]);
        }
    }

    public void displayMessage(String s, String z, String h, String m) {
        System.out.println(s + "\nJudul Buku \t: " + z + "\nNama Penulis \t: " + h + "\nTahun Terbit \t: " + m);
    }
}


Class ClassObject
package bab2constructordaninstancemethod;

import java.util.Scanner;

public class ClassObject {

    public static void main(String[] args) {
        String next;
        int pilih, buku = 5;
        Scanner asuka = new Scanner(System.in);
        ClassData sausan = new ClassData();
        do {
            System.out.print("1.Cari buku\n2.Input buku baru\n3.Tampilkan semua buku\nPilihan\t: ");
            pilih = asuka.nextInt();
            if (pilih == 1) {
                do {
                    System.out.println("===========================");
                    System.out.print("Pencarian Berdasarkan ? \n1.Kategori\n2.Judul Buku\n3.Penulis\n4.Tahun Terbit\nPilihan\t: ");
                    int pil = asuka.nextInt();
                    sausan.display(pil);
                    System.out.println("Lanjutkan Pencarian?");
                    next = asuka.next();
                } while (next.endsWith("y"));
            }
            if (pilih == 2 && buku > 0) {
                System.out.println("Tambah Buku Baru\nKategori\t: ");
                String ktg = asuka.nextLine();
                asuka.nextLine();
                System.out.println("Judul\t: ");
                String jdl = asuka.nextLine();
                System.out.println("Penulis\t: ");
                String pls = asuka.nextLine();
                System.out.println("Tahun\t: ");
                String thn = asuka.nextLine();
                sausan.setBukbar(ktg, jdl, pls, thn, buku);
                buku--;
            }
            if (pilih == 3) {
                for (int i = 0; i < sausan.Buku.length - 5; i++) {
                    sausan.displayMessage(sausan.Buku[i][0], sausan.Buku[i][1], sausan.Buku[i][2], sausan.Buku[i][3]);
                }
                for (int j = sausan.Buku.length - (5); j < sausan.Buku.length - buku; j++) {
                    sausan.displayMessage(sausan.Buku[j][0], sausan.Buku[j][1], sausan.Buku[j][2], sausan.Buku[j][3]);
                }
            }
        } while (pilih <= 3 && pilih >= 1);
    }
}


Download the file here
Share:

0 comments:

Posting Komentar