PERTEMUAN KE-4
ANTRIAN/ QUEUE
DISUSUN OLEH
Nama : Hermawan
A. Pembahasan
class Program_Antrian
{
static
int ekor = -1;
static
int maxEkor = 9;
KETERANGAN:
Mendeklarasikanjumlah space untukantrian yang
akandigunakan. Yaitu menggunakan variable ekorsebagaibatas yang dapatdiisi,
dikarenakansetiapindeksdimulaidarinol, maka data dapatdiisidari 0, -1
sebagaipembatas. Dan variable maxEkor merupakanbatasmaksimum data dapatdiisi.Yakni 9, dan data
akandiisidenganindeks 0 sampai 9 sebanyak 10 data.
public static void addQueue(String antrian[], String
data)
{ if (ekor>= maxEkor)
{ System.out.println("Maaf,
AntrianPenuh"); }
else
{ System.out.println("addQueue : "+ data);
ekor++;
antrian[ekor] = data; }
KETERANGAN:
Daribarisan program
diatas. MerupakanpembuatanmethidaddQueuesebagaipenambahanantrian.Didalam method
terrsebutterdapatsebuahkondisi, dimana, jikaekor / indeksmelebihibatasmaksimal,
maka aka nada peringatanbahwa ”Maaf,Antrianpenuh”. Namun, jikatidak, maka data aka
ditambahkandalamantriandanekorakanbertambah.
public static String deQueue(String antrian[])
{ Stringhasil = "";
if (ekor< 0)
{ hasil = "Maaf, AntrianKosong"; }
else
{ hasil = antrian[0];
antrian[0] = null;
KETERANGAN:
Berbedadengan
method addQueuesebagaipenambahanantrian, method deQueueadalah method
untukmengeluarkanantrian.Jikaekorlebihkecildari 0, makaakanadapesanbahwa“Maaf, Antriankosong,
sehinggatidakada data yang perludikeluarkan. Dan jikalebihbedardari 0,
makahasilakansamadenganantrian.
for (int i=1; i<=ekor; i++)
{ antrian[i-1] = antrian[i];
antrian[i] = null; }
ekor--; }
return (hasil); }
KETERANGAN:
Programdiatasmerupakanperulangan (for)dimanaindek i – 1
danakanterusdilakukanpenambahanantriansampaipadanilaiilebihkecilatausamadengannilaiekor.
Dan antrianakanditarik/dikurangi.
public static void bacaAntrian(String antrian[])
{ System.out.println("KONDISI ANTRIAN :
");
for (int i=0; i<=maxEkor; i++)
{ if (i == ekor)
System.out.println(i +". "+ antrian[i]
+"ekor");
else
System.out.println(i
+". "+ antrian[i])
KETERANGAN:
Method diadasadalah method yang digunakanuntukmembacaantrian
yang ada, denganmenggunakantipe data string.Dalam method tersebutterdapatperulangan
for, yaituuntukmempermudahkanletakekordariantrian.dimananilaidarivariabel i =
0, danakandiulangsampaipadanilailebihkecilatausamadengannilai yang
adapadamakEkor.jadinilai i akandikerjakanterusatauditambahsatudenganmenggunkan
i++. Jikanilai I samadengannilaiekor,
makapadaantrianakanditambahkantulisanekorsetelah data ditampilkan.
Namunjikatidak, tulisanitutidakakanmunculdan yang adahanya data.
public static void main(String[] args) {
String
antrian[] = new String[100];
addQueue (antrian, "Mobil A");
addQueue (antrian, "Mobil B");
addQueue (antrian, "Mobil C");
addQueue (antrian, "Mobil D");
System.out.println(" ");
bacaAntrian(antrian);
System.out.println(" ");}
KETERANGAN:
Potongan program diatasmerupakan data ataumobil
yang akanmasukdalamantrian, danmobil yang akanmasukdalamantrianberjumlah 4
mobil, yaitumobil A, mobil B, mobil C, danmobil D. Dan yang
masukpertamaadalahmobil A, makamobil A merupakan top dalamantrianyangaada,
haltersebutditentukandaripembacaanantrian, pada program
sebelumnyadanekoradapadamobil D. Dari program diatas, mempunyai array sebanyak
100, artinya data dapatdimuatsebanyak 100,
namunkarenanilaimaxEkoradalahsebanyak 9, tentu data ataubanyak data yang
akanmasukkedalamantrianhanya 10 mobil (dimulaidari 0 – 10).
PRAKTIKUM KE 2( Penambahan 8 Elemen)
addQueue
addQueue
(antrian, "Mobil E");
addQueue
(antrian, "Mobil F");
addQueue
(antrian, "Mobil G");
addQueue
(antrian, "Mobil H");
addQueue
(antrian, "Mobil I");
addQueue
(antrian, "Mobil J");
addQueue
(antrian, "Mobil K");
addQueue
(antrian, "Mobil L");
System.out.println(“
“);
bacaAntrian(antrian);
System.out.println(“
“);
bacaAntrian(antrian);
}
}
KETERANGAN:
Data yang
diatasakanditambahkankedalamantrian,
yaitu antrian Mobil Dari Mobil A hingga Mobil L. Dan
kemudian
method bacaAntriandipanggilkembali.
Tetapi ternyata data yang ditambahkanmelebihikapasitasantrian,
danakanmenampilkanpesanbahwaantrianpenuh.
HASIL
OUTPUT :
PRAKTIKUM
KE 3 ( Menambah Perintah)
ü System.out.println("deQueue
: "+ deQueue(antrian));
bacaAntrian(antrian);
KETERANGAN:
baris program diatasmerupakanpenarikan data dariantrian.
Yang dari kondisi Mobil J menjadi ekor à mobil J menjadi ekor tetapi diposisi 9, dan
posisi 10 adalah nill
Sehingga
hasil Output lewat Progran Netbean adalah :
...
deQueue : Mobil A
KONDISI ANTRIAN :
1. Mobil B
2. Mobil C
3. Mobil D
4. Mobil E
5. Mobil F
6. Mobil G
7. Mobil H
8. Mobil I
9. Mobil J ekor
10. null
BUILD SUCCESSFUL (total time:
0 seconds)
PRAKTIKUM KE 4 (deQueue sebanyak
7 kali berturut-turut)
ü System.out.println("deQueue : "+ deQueue(antrian));
ü System.out.println("deQueue : "+ deQueue(antrian));
ü System.out.println("deQueue : "+ deQueue(antrian));
ü System.out.println("deQueue : "+ deQueue(antrian));
ü System.out.println("deQueue : "+ deQueue(antrian));
ü System.out.println("deQueue : "+ deQueue(antrian));
ü System.out.println("deQueue : "+ deQueue(antrian));
ü bacaAntrian(antrian);
KETERANGAN:
Maka akanterjadipengambilanantrianmelebihidarijumlahantrian
yang ada, maka output
setelahsemuaantrianditarikakanmengeluarkaninformasibahwaantriantelahkosong.(kondisi null dari posisi 10 sampai posisi 4)
Dengan hasil Output lewat Netbean
adalah :
..
..
KONDISI ANTRIAN :
1. Mobil H
2. Mobil I
3. Mobil J ekor
4. null
5. null
6. null
7. null
8. null
9. null
10. null
BUILD SUCCESSFUL (total time: 0 seconds)
A. TUGAS
static int ekor = -1;
static int maxEkor
= 9;
public static
void addQueue(String antrian[],String data){
if (ekor
>= maxEkor)
System.out.println("Maaf, antrian Penuh");
else {
System.out.println("AddQueue : "+ data);
ekor =
ekor+1;
antrian[ekor] = data;
}
}
public static
String deQueue (String antrian[])
{ String
hasil="";
if (ekor <
0)
hasil =
"Maaf, Antrian Kosong";
else {
hasil =
antrian[ekor];
antrian[ekor] = "";
ekor--;
}
return (hasil);
}
public static
void bacaAntrian(String tumpukan[])
{
System.out.println("KONDISI antrian : ");
for (int
i=ekor; i>=0; i--)
{ if
(i==maxEkor)
System.out.println(i+ ". "+ tumpukan[i] +" ekor");
else
System.out.println(i+ ". "+ tumpukan[i]);
}
}
public static
void main(String[] args) {
String
antrian[] = new String[10];
addQueue
(antrian, "Mobil A");
addQueue
(antrian, "Mobil B");
addQueue (antrian,
"Mobil C");
addQueue
(antrian, "Mobil D");
addQueue
(antrian, "Mobil E");
System.out.println(" ");
bacaAntrian(antrian);
System.out.println("deQueue : "+ deQueue(antrian));
System.out.println("deQueue : "+ deQueue(antrian));
bacaAntrian(antrian);
}
}
HASIL OUTPUT :
c. lISTING
ü
Terlampir
0 komentar:
Posting Komentar