Latihan Mandiri: Memuat Program Queue
Buatlah program queue untuk mengelola antrian pembelian barang. Program memiliki menu untuk memasukkan barang baru ke dalam antrian (ke ujung belakang), menu untuk menampilkan daftar antrian pembelian barang, dan menu untuk memproses barang yang ada di dalam antrian (mulai dari antrian yang pertama kali masuk; depan).
Nama: Annisa Dita Putri Kartika
NPM: 21082010090
Source Code:
public class cBarang {
private String nama;
cBarang prev, next;
cBarang(String n){
nama=n;
System.out.println(nama+" dibuat...");
}
public String getNama() {
return nama;
}
}
public class CQueue {
cBarang front, rear;
int size;
CQueue(){
front=rear=null;
size=0;
System.out.println("Objek Queue dibuat...");
}
public void enqueue(cBarang baru){
if (rear==null) {
front=rear=baru;
}else{
rear.next=baru;
baru.prev=rear;
rear=baru;
}
System.out.println("Nomor antrian :"+ (size+1));
size++;
System.out.println("Tambah Antrian sukses...");
}
public cBarang dequeue(){
if (rear==null) {
System.out.println("Proses Antrian Kosong!");
return null;
}
else if(front.next==null){
cBarang t = front;
front=rear=null;
System.out.println("Proses Antrian sukses...");
size--;
return(t);
}
else{
cBarang t = front.next;
cBarang t2= front;
t2.next=null;
front = t;
front.prev=null;
System.out.println("Proses Antrian sukses...");
size--;
return(t2);
}
}
public void print(){
int count = 1;
System.out.println("Panjang Antrian : "+size+" ");
System.out.println("Daftar Antrian : ");
boolean kosong=true;
int b=0;
for (cBarang t = front; t != null; t=t.next) {
System.out.println(count+". " + t.getNama()+" "); b++;
count++;
}
if (size==0) {
System.out.println("Antrian Kosong");
}
}
}
Komentar
Posting Komentar