5025231061_Nadin Nabil Hafizh Ayya sy_Tugas Tech Support System

Nama : Nadin Nabil Hafizh Ayyasy

NRP : 5025231061

Git : https://github.com/Happpizh/PBO/tree/main/5025231061_Nadin%20Nabil%20H.A_Tugas%20%206


Tech Support System

Penjelasan code 


1. Kelas SupportSystem

Kelas ini bertanggung jawab untuk menjalankan sistem dukungan teknis sederhana. Fungsi utamanya adalah menerima input dari pengguna dan memberikan tanggapan yang sesuai, melalui objek Responder. Berikut adalah beberapa bagian pentingnya:

Atribut:

  • InputReader reader: Objek untuk membaca input dari pengguna.
  • Responder responder: Objek yang menghasilkan tanggapan untuk input pengguna.
  • Konstruktor:
    1. Pada saat objek SupportSystem dibuat, konstruktor menginisialisasi objek reader dan responder untuk menangani input dan respons.
    2. Metode start: Ini adalah metode utama yang menjalankan sistem. Loop while terus berjalan selama pengguna belum mengetik kata "bye". Setiap kali pengguna memasukkan sesuatu, sistem akan mengirimkan input tersebut ke kelas Responder untuk mendapatkan tanggapan yang sesuai, lalu mencetaknya ke konsol.
    3. Metode printWelcome dan printGoodbye: Metode ini digunakan untuk mencetak pesan selamat datang dan selamat tinggal pada awal dan akhir interaksi pengguna.




2. Kelas Responder

Kelas ini bertugas untuk menghasilkan respons berdasarkan input yang diberikan oleh pengguna. Respons yang diberikan bisa berupa tanggapan acak atau tanggapan yang sesuai dengan kata kunci tertentu yang ditemukan dalam input pengguna.

Atribut:

  • Random answerNum: Digunakan untuk menghasilkan angka acak.
  • String[] answers: Sebuah array yang menyimpan berbagai respons atau tanggapan.
  • HashMap<String, Integer> keywords: Peta yang menghubungkan kata kunci tertentu dengan indeks jawaban dalam array answers.
  • Konstruktor:
    1. Konstruktor Responder menginisialisasi array answers dan mengisi daftar kata kunci (keywords), di mana setiap kata kunci dipetakan ke jawaban spesifik dalam array answers.
    2. Metode generateResponse: Metode ini menerima input dari pengguna dan memprosesnya menjadi respons. Pertama, input dipecah menjadi kata-kata individual. Jika salah satu kata tersebut cocok dengan kata kunci dalam keywords, maka jawaban yang sesuai dengan kata kunci tersebut akan dihasilkan. Jika tidak ada kata kunci yang cocok, maka sistem akan memilih jawaban secara acak dari array answers yang sudah diinisialisasi.
    3. Metode answers: Metode ini mengisi array answers dengan berbagai tanggapan yang mungkin diberikan oleh sistem. Tanggapan-tanggapan ini bisa berupa komentar teknis atau sekadar lelucon yang ringan.
    4. Metode keywordlist: Metode ini mengisi peta kata kunci (keywords) dengan kata-kata tertentu (misalnya "java", "windows") yang terkait dengan masalah umum yang mungkin dihadapi pengguna. Setiap kata kunci dihubungkan dengan indeks tanggapan yang relevan dalam array answers.


3. Kelas InputReader

Kelas ini bertugas membaca input dari pengguna melalui konsol. Kelas ini cukup sederhana dan hanya memiliki satu metode utama untuk mendapatkan masukan pengguna.

Atribut:

  • InputReader reader: Objek ini digunakan untuk menangkap input dari pengguna melalui konsol.
  • Responder responder: Objek ini digunakan untuk menghasilkan tanggapan berdasarkan input yang diberikan oleh pengguna.
  • Konstruktor:
    1. Pada konstruktor, objek reader dan responder diinisialisasi untuk mempersiapkan sistem dukungan agar dapat berfungsi.
    2. Metode start: Metode ini adalah titik awal interaksi pengguna. Menampilkan pesan sambutan, kemudian memasuki loop di mana ia terus meminta input dari pengguna. Jika pengguna mengetik "bye", loop akan berhenti dan sistem akan menampilkan pesan perpisahan.
    3. Metode printWelcome: Menampilkan pesan sambutan kepada pengguna, memberi tahu mereka tentang fungsionalitas sistem dan cara keluar.
    4. Metode printGoodbye: Menampilkan pesan perpisahan saat interaksi selesai.



Cara menjalankan

1. Pastikan kode sesuai dan terhubung dengan benar


2. klik kanan pada class SupportSystem lalu pilih 'newSupportSystem()'


3. Lalu akan muncul kotak merah disamping, klik kanan dan tekan 'void start()'



4. Setelah itu silahkan input string yang di inginkan

Comments

Popular posts from this blog

Otomata Church Turing oleh Nadin Nabil Hafizh Ayyasy