Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /**
- *Samuel Berkat Hulu (5025201055)
- *Afiq Akram (5025201270)
- *
- *Final Project Struktur Data
- */
- import java.io.*;
- import java.util.*;
- import java.io.BufferedReader;
- import java.io.InputStreamReader;
- public class Main {
- private Hashtable jadwalMingguan;
- public Main(){
- this.jadwalMingguan = new Hashtable(); //variable jadwalMingguan mengisi hashtable
- }
- public void tambah(String name, String activity){ //deklarasi name dan activity
- if(this.jadwalMingguan.containsKey(activity)){ //memeriksa apakah key sedang dipetakan atau tidak
- System.out.println(name+ " sudah ditambahkan."); //output apabila telah ditambahkan sebanyak 1x
- } else {
- this.jadwalMingguan.put(name, activity);
- System.out.println(name+" berhasil ditambahkan."); //output apabila sudah ditambahkan
- }
- }
- public void cari (String activity){ //untuk mendapatkan nilai dari yang dicari
- if(this.jadwalMingguan.containsKey(activity)){
- String name = (String) this.jadwalMingguan.get(activity);
- System.out.println("Aktivitas "+activity+" minggu ini "+name+"."); //apabila ada maka outpunya ini.
- } else {
- System.out.println(activity+" Tidak ditemukan.");//apabila output tidak ada maka outputnya ini.
- }
- }
- public void status(){ //status untuk menampilkan agenda mendatang
- Enumeration names; //enumeration untuk medefinisikan menjadi tipe data konstanta
- names = this.jadwalMingguan.keys();
- int total = 0;
- while(names.hasMoreElements()) {
- String str = (String) names.nextElement(); //str dideklrasikan sbg (String) names.nextElement()
- System.out.println(str + " aktivitas minggu ini yaitu " + this.jadwalMingguan.get(str)); //output kegiatan pada minggu tsb
- total++;
- }
- System.out.println("Total aktivitas minggu ini "+total);
- }
- public void hapus_entry(String activity){ //hapus_entry berfungsi untuk menghapus kegiatan
- if(this.jadwalMingguan.containsKey(activity)){
- this.jadwalMingguan.remove(activity);//mengremove aktivitas
- System.out.println(activity+" berhasil dihapus."); //output apabila kegiatan sukses dihapus
- } else {
- System.out.println(activity+" tidak ditemukan.");//output apabila kegiatan yang ingin dihapus tidak ditemukan
- }
- }
- public static void main(String[] args ) throws IOException { //bagian main
- String name;
- InputStreamReader isr = new InputStreamReader(System.in);
- BufferedReader br =new BufferedReader(isr);
- Scanner scanner = new Scanner(System.in);
- Main phoneBook = new Main();
- while(true){
- System.out.print("\n-Program Schedule Mingguan-\n"); //di bawah ini merupakan tampilan setelah di run
- System.out.print("Pilih Kategori\n");
- System.out.print("1. Tambah Aktivitas Mingguan \n");
- System.out.print("2. Cari Aktivitas di Minggu ini \n");
- System.out.print("3. Status \n");
- System.out.print("4. Hapus Aktivitas \n");
- System.out.print("5. Keluar \n");
- System.out.print("Kategori ke : ");
- int command = scanner.nextInt();
- if(command==1){ //apabila memilih kategori 1 maka outputnya di bawah ini
- System.out.print("Nama : "); //apabila input sudah dimasukkan maka di init menjadi name
- String nama = br.readLine();
- System.out.print("Aktivitas : "); //apabila input sudah berhasil di input maka di init menjadi activity
- String activity = br.readLine();
- phoneBook.tambah(activity, nama);
- }
- else if(command==2){ //jika memilih kategori 2 maka outputnya mencari nama yang akan dicari
- System.out.print("Aktivitas : ");
- String activity = br.readLine(); //discan lalu dicari
- phoneBook.cari(activity);
- }
- else if(command==3){ //apabila memilih kategori 3 maka outpunya menampilkan kegiatan yang tersedia di minggu tersebut
- phoneBook.status();
- }
- else if(command==4){ //command 4 bertugas untuk menghapus kegiatan yang ingin dihaps
- System.out.print("Aktivitas : ");
- String activity = br.readLine();
- phoneBook.hapus_entry(activity);
- }
- else if(command==5){ //memilih nomer 5 berarti program telah selesai
- break;
- }
- }
- scanner.close();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement