Aplikasi Support System

 

 TUGAS 5 PBO - Aplikasi Support System


1. supportSystem

--------------------------------------------------

/**

 * support system sederhana.

 *

 * @author ichsanul_aulia

 * @version (111720)

 */

import java.util.HashSet;  


public class supportSystem

{

  

   private inputReader reader;  

   private responder responder;  

   public supportSystem(){  

     reader = new inputReader();  

     responder = new responder();  

   }  

   public void start(){  

     boolean finished = false;  

     clearScreen();  

     System.out.println("\nHalo, selamat datang! Saya mega!, ada yang bisa saya bantu ?");  

     System.out.println("Saya akan menjawab pertanyaanmu seputar aplikasi kami.");  

     System.out.println("Tulis 'selesai' jika ingin mengakhiri percakapan.\n");  

     while(!finished){   

       HashSet<String> input = reader.getInput();   

       if(input.contains("selesai")){  

         finished = true;  

       }   

       else{   

         String response = responder.generateResponse(input);   

         System.out.println(response);   

       }   

     }   

    System.out.println("Terimakasih telah bertanya\n.");

    System.out.println("  Sampai jumpa kembali!");    

   }  

   public static void clearScreen() {   

     System.out.print('\u000C');  

     System.out.flush();   

   }  

 }  

---------------------------------------------------

2. inputRader

-----------------------------------------------------

/**

 * Write a description of class inputReader here.

 *

 * @author ichsanul_aulia

 * @version (111720)

 */

 import java.util.Scanner;  

 import java.util.HashSet;  


public class inputReader

{

 

   private Scanner reader;   

   public inputReader(){   

    reader = new Scanner(System.in);   

   }   

   public HashSet<String> getInput(){   

    System.out.print("> ");   

    String inputLine = reader.nextLine().trim().toLowerCase();   

    String[] wordArray = inputLine.split(" ");   

    HashSet<String> words = new HashSet<String>();  

    for(String word : wordArray){   

     words.add(word);   

    }  

    return words;   

   }   

 }  

------------------------------------------------------

3. responder


-------------------------------------------------

/**

 * Write a description of class responder here.

 *

 * @author ichsanul_aulia

 * @version (111720)

 */

 import java.util.Random;  

 import java.util.ArrayList;  

 import java.util.HashMap;  

 import java.util.HashSet;  

  

public class responder

{

 

   private Random randomGenerator;   

   private ArrayList<String> defaultResponses;   

   private HashMap<String, String> responseMap;  

   public responder(){  

     defaultResponses = new ArrayList<String>();   

     responseMap = new HashMap<String, String>();  

     randomGenerator = new Random();  

     fillResponsesMap();   

     fillDefaultResponse();  

   }  

   public String generateResponse(HashSet<String> sentence){  

     for(String word : sentence){   

      String response = responseMap.get(word);   

      if(response != null) return response;   

     }   

     return pickDefaultResponse();  

   }  

   private void fillResponsesMap(){  

     responseMap.put("lapor", "laporan bisa dikirim ke mega@yahoo.com.");  

     responseMap.put("gangguan", "mohon maaf atas ketidak nyamannannya, akan kita perbaiki.");  

     responseMap.put("telepon", "bisa hubungi 0812345678910");  

     responseMap.put("promo", "promo bisa diambil");  

     responseMap.put("daftar", " bisa langsung daftar ke gerai ");  

     responseMap.put("harga", " harga masih sama kak, bisa langsung ke IG kak ");

     responseMap.put("untung", " banyak keuntungan yang bisa didapat ya kak ");  

   }  

   private void fillDefaultResponse(){   

    defaultResponses.add("Maaf, bisa ulangi kembali pertanyaan kak ?.");     

    defaultResponses.add("Maaf kak mega belum paham ;( ");  

   }  

   private String pickDefaultResponse(){   

    int index = randomGenerator.nextInt(defaultResponses.size());   

    return defaultResponses.get(index);   

   }   

 }  

Hasil Compile



Komentar

Postingan populer dari blog ini