Вы находитесь на странице: 1из 4

LABORATORIUM PEMBELAJARAN ILMU KOMPUTER

FAKULTAS ILMU KOMPUTER


UNIVERSITAS BRAWIJAYA
BAB : AGEN CERDAS
NAMA : KELOMPOK 1
NIM :- ACC
TANGGAL : 20/03/2017
JENIS : LATIHAN
ASISTEN : - NOVI NUR PUTRIWIJAYA
- HENY DWI JAYANTI

A. DEFINISI MASALAH
Modifikasi kode program diatas sehingga dapat menyelesaikan task environment
pada Gambar 1.2.

Gambar Error! No text of specified style in document..2 Environment Vacumm


Cleaner
B. JAWAB

Source code:
1 public class AgenCerdas {
2 private String lingkungan[][];
3 AgenCerdas(int location){
4 lingkungan = new String[location][4];
5 }
6 public void setKondisi(int i, String Nama, String
vlocation, String hlocation, String status){
7 lingkungan[i-1][0]=Nama;
8 lingkungan[i-1][1]=vlocation;
9 lingkungan[i-1][2]=hlocation;
10 lingkungan[i-1][3]=status;
11 }
12 public void vacumm (int i, String vlocation, String
hlocation, String status){
13 if ("kotor".equals(status.toLowerCase())){
14 System.out.println("----bersih-bersih----");
15 status = "bersih";
16 lingkungan[i][3]=status;
17 vacumm(i, vlocation, hlocation, status);
18 }else if ("atas".equals(vlocation.toLowerCase())){
19 if("kanan".equals(hlocation.toLowerCase()))
20 System.out.println("geser kebawah v");
21 else
22 System.out.println("geser kanan-->");
23 }else if ("bawah".equals(vlocation.toLowerCase())){
24 if("kiri".equals(hlocation.toLowerCase()))
25 System.out.println("geser keatas ^");
26 else
27 System.out.println("<--geser kiri");
28 }
29 }
30 public void bersihkan(){
31 for (int i = 0; i<lingkungan.length; i++){
32 System.out.println(lingkungan[i][0]);
33 vacumm(i, lingkungan[i][1], lingkungan[i][2],
lingkungan[i][3]);
34 System.out.println("");
35 }
36 cek();
37 }
38 public void cek (){
39 for (int i = 0; i<lingkungan.length; i++){
40 if(!"bersih".equals(lingkungan[i][3])){
41 bersihkan();
42 break;
43 }
44 }
45 System.out.println("SEMUA SUDAH BERSIH");
46 }
47 public static void main(String[] args) {
48 AgenCerdas a = new AgenCerdas(6);
49 System.out.println("POSISI:"
50 + "\n1 --> 2 --> 3"
51 + "\n6 <-- 5 <-- 4\n");
52 a.setKondisi(1, "Lokasi 1", "atas", "kiri", "kotor");
53 a.setKondisi(2, "Lokasi 2", "atas", "tengah", "kotor");
54 a.setKondisi(3, "Lokasi 3", "atas", "kanan", "bersih");
55 a.setKondisi(4, "Lokasi 4", "bawah", "kanan",
"bersih");
56 a.setKondisi(5, "Lokasi 5", "bawah", "tengah",
"kotor");
57 a.setKondisi(6, "Lokasi 6", "bawah", "kiri", "kotor");
58 a.bersihkan();
59 }
60 }

Pembahasan:
1 Mendeklarasikan class AgenCerdas.
2 Mendeklarasikan variable private bertipe array String dua dimensi
lingkungan sebagai penyimpan data lingkungan.
3-5 Mendeklarasikan konstruktor class AgenCerdas yang menggunakan
parameter int location.
6-11 Mendeklarasikan method void setKondisi berparameter int i, String Nama,
String vlocation, String hlocation, dan String status yang berfungsi untuk
mengatur kondisi lingkungan ke-i dengan memberikan nama, lokasi
vertical, lokasi horizontal, dan status sesuai dengan parameter yang
digunakan.
12-29 Mendeklarasikan method void vacumm berparameter int i, String vlocation,
String hlocation, dan String status yang berfungsi untuk membersihkan
lingkungan ke-i yang berstatus “kotor” serta memindahkan lokasi vacuum
cleaner ke lokasi selanjutnya sesuai dengan pola yang telah ditunjukkan
pada screenshot dibawah
30-37 Mendeklarasikan method void bersihkan tanpa parameter yang berfungsi
untuk memulai pembersihan dengan vacuum cleaner dengan memanggil
method vacumm() dimulai dari lingkungan pertama sampai lingkungan
terakhir pada array dan melakukan pengecekan dengan memanggil method
cek() setelah semua lingkungan telah dibersihkan.
38-46 Mendeklarasikan method void cek tanpa parameter yang berfungsi untuk
melakukan pengecekan status lingkungan yang jika ada salah satu
lingkungan yang statusnya belum “bersih” maka akan dijalankan lagi
pembersihan dengan memanggil method bersihkan(). Jika semua
lingkungan telah berstatus “bersih” maka program akan memberikan
laporan bahwa semua lingkungan sudah bersih.
47-59 Mendeklarasikan method main
60 Menutup deklarasi class AgenCerdas

Screenshot:

Вам также может понравиться