Advertisement
Samuel_Berkat_Hulu

ksdjfs

Jul 6th, 2021
378
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 4.08 KB | None | 0 0
  1. /**
  2. *Samuel Berkat Hulu (5025201055)
  3. *Afiq Akram         (5025201270)
  4. *
  5. *Final Project Struktur Data EAS
  6. */
  7. import java.io.*;
  8. import java.util.*;
  9. import java.io.BufferedReader;
  10. import java.io.InputStreamReader;
  11.  
  12. public class Main {
  13.  
  14. private Hashtable jadwalMingguan;
  15.  
  16. public Main(){
  17.  this.jadwalMingguan = new Hashtable();                                    //variable jadwalMingguan mengisi hashtable
  18.  }
  19.  
  20.  
  21.  
  22. public void tambah(String name, String activity){           //deklarasi name dan activity
  23.  if(this.jadwalMingguan.containsKey(activity)){                //memeriksa apakah key sedang dipetakan atau tidak
  24.  System.out.println(name+ " sudah ditambahkan.");          //output apabila telah ditambahkan sebanyak 1x
  25.  } else {
  26.  this.jadwalMingguan.put(name, activity);
  27.  System.out.println(name+" berhasil ditambahkan.");         //output apabila sudah ditambahkan
  28.  }
  29.  }
  30.  
  31. public void cari (String activity){ //untuk mendapatkan nilai dari yang dicari
  32.  if(this.jadwalMingguan.containsKey(activity)){
  33.  String name = (String) this.jadwalMingguan.get(activity);
  34.  System.out.println("Aktivitas "+activity+" minggu ini "+name+"."); //apabila ada maka outpunya ini.
  35.  } else {
  36.  System.out.println(activity+" Tidak ditemukan.");//apabila output tidak ada maka outputnya ini.
  37.  }
  38.  }
  39.  
  40. public void status(){ //status untuk menampilkan agenda mendatang
  41.  Enumeration names; //enumeration untuk medefinisikan menjadi tipe data konstanta
  42.  names = this.jadwalMingguan.keys();
  43.  int total = 0;
  44.  while(names.hasMoreElements()) {
  45.  String str = (String) names.nextElement(); //str dideklrasikan sbg (String) names.nextElement()
  46.  System.out.println(str + " aktivitas minggu ini yaitu " + this.jadwalMingguan.get(str)); //output kegiatan pada minggu tsb
  47.  total++;
  48.  }
  49.  System.out.println("Total aktivitas minggu ini "+total);
  50.  }
  51.  
  52. public void hapus_entry(String activity){ //hapus_entry berfungsi untuk menghapus kegiatan
  53.  if(this.jadwalMingguan.containsKey(activity)){
  54.  this.jadwalMingguan.remove(activity);//mengremove aktivitas
  55.  System.out.println(activity+" berhasil dihapus."); //output apabila kegiatan sukses dihapus
  56.  } else {
  57.  System.out.println(activity+" tidak ditemukan.");//output apabila kegiatan yang ingin dihapus tidak ditemukan
  58.  }
  59.  }
  60.  
  61. public static void main(String[] args ) throws IOException { //bagian main
  62.  
  63. String name;
  64. InputStreamReader isr = new InputStreamReader(System.in);
  65. BufferedReader br =new BufferedReader(isr);
  66.  
  67. Scanner scanner = new Scanner(System.in);
  68. Main JadwalMingguan = new Main();
  69.  
  70. while(true){
  71.     System.out.print("\n-Program Schedule Mingguan-\n"); //di bawah ini merupakan tampilan setelah di run
  72.     System.out.print("Pilih Kategori\n");
  73.     System.out.print("1. Tambah Aktivitas Mingguan \n");
  74.     System.out.print("2. Cari Aktivitas di Minggu ini \n");
  75.     System.out.print("3. Status \n");
  76.     System.out.print("4. Hapus Aktivitas \n");
  77.     System.out.print("5. Keluar \n");
  78.     System.out.print("Kategori ke : ");
  79.  
  80. int command = scanner.nextInt();
  81.  
  82. if(command==1){ //apabila memilih kategori 1 maka outputnya di bawah ini
  83.     System.out.print("Nama      : "); //apabila input sudah dimasukkan maka di init menjadi name
  84.     String nama = br.readLine();
  85.     System.out.print("Aktivitas : "); //apabila input sudah berhasil di input maka di init menjadi activity
  86.     String activity = br.readLine();
  87.     JadwalMingguan.tambah(activity, nama);
  88.  }
  89.  else if(command==2){ //jika memilih kategori 2 maka outputnya mencari nama yang akan dicari
  90.     System.out.print("Aktivitas : ");
  91.     String activity = br.readLine(); //discan lalu dicari
  92.     JadwalMingguan.cari(activity);
  93.  }
  94.  else if(command==3){ //apabila memilih kategori 3 maka outpunya menampilkan kegiatan yang tersedia di minggu tersebut
  95.     JadwalMingguan.status();
  96.  }
  97.  else if(command==4){ //command 4 bertugas untuk menghapus kegiatan yang ingin dihaps
  98.     System.out.print("Aktivitas : ");
  99.     String activity = br.readLine();
  100.     JadwalMingguan.hapus_entry(activity);
  101.  }
  102.  else if(command==5){ //memilih nomer 5 berarti program telah selesai
  103.  break;
  104.  }
  105.  }
  106.  scanner.close();
  107.  }
  108.  }  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement