Latihan Queue
Nama: Kimberlie Cindy Kolopaking
NPM: 22082010200
Kelas: 2E
Source Code
- appQueue
package pkgQueue;
import java.util.Scanner;
public class appQueue {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
cQueue antrian=new cQueue();
int pilih=0;
System.out.println("-----------------------------------");
System.out.println("Nama : Kimberlie Cindy Kolopaking");
System.out.println("NPM : 22082010200");
System.out.println("Kelas : 2E");
System.out.println("-----------------------------------");
do{
System.out.println("============================================");
System.out.println(" MENU ANTRIAN ");
System.out.println("============================================");
System.out.println("1. Tambah Antrian");
System.out.println("2. Proses Antrian");
System.out.println("3. Lihat Antrian");
System.out.println("4. Selesai");
System.out.print("Pilih : ");
pilih=sc.nextInt();
switch(pilih){
case 1:
System.out.println("");
System.out.println("-----------------------------------------");
System.out.println(" Tambah Antrian ");
System.out.println("-----------------------------------------");
System.out.print("Nama Barang : ");
String brg=sc.next();
cNode baru=new cNode(brg);
antrian.enqueue(baru);
break;
case 2:
cNode t=antrian.dequeue();
boolean cek=false;
if(t==null){
cek=true;
}
if(cek==true){
System.out.println("Antrian Kosong!");
}
else{
System.out.println(t.getBarang()+" keluar");
}
break;
case 3:
antrian.viewQueue();
break;
case 4:
System.out.println("============================================");
System.out.println(" TERIMA KASIH! ");
System.out.println("============================================");
break;
}
}while(pilih!=4);
}
}
- cNode
package pkgQueue;
public class cNode {
String barang;
cNode next;
cNode(String b){
barang=b;
}
public String getBarang(){
return barang;
}
}
- cQueue
package pkgQueue;
public class cQueue {
cNode front,rear;
int jumlah;
cQueue(){
front=rear=null;
jumlah=0;
System.out.println("Object Antrian dibuat...");
}
public void enqueue(cNode baru){
if(rear==null){
rear=front=baru;
}
else{
rear.next=baru;
rear=baru;
}
System.out.println("Nomor Antrian ke-"+(jumlah+1));
jumlah++;
System.out.println("Tambah Antrian Sukses...");
}
public cNode dequeue(){
cNode temp=front;
if(temp==null){
System.out.println("Antrian Kosong!");
}
else if(front.next==null){
cNode t=front;
front=rear=null;
temp.next=null;
System.out.println("Proses Antrian Sukses...");
jumlah--;
return(t);
}
else{ //antrian berisi >1 simpul
cNode t=front.next;
cNode t2=front;
t2.next=null;
front=t;
front.next=null;
System.out.println("Proses Antrian Sukses...");
jumlah--;
return(t2);
}
return temp;
}
public void viewQueue(){
int count=1;
System.out.println("Panjang Antrian : "+jumlah);
System.out.println("Daftar Antrian :");
for(cNode t=front;t!=null;t=t.next){
System.out.println(count+"."+t.getBarang()+" ");
count++;
}
if(jumlah==0){
System.out.println("Antrian Kosong!");
}
}
}
Output
-----------------------------------
Nama : Kimberlie Cindy Kolopaking
NPM : 22082010200
Kelas : 2E
-----------------------------------
============================================
MENU ANTRIAN
============================================
1. Tambah Antrian
2. Proses Antrian
3. Lihat Antrian
4. Selesai
Pilih : 1
-----------------------------------------
Tambah Antrian
-----------------------------------------
Nama Barang : Pensil
Nomor Antrian ke-1
Tambah Antrian Sukses...
============================================
MENU ANTRIAN
============================================
1. Tambah Antrian
2. Proses Antrian
3. Lihat Antrian
4. Selesai
Pilih : 1
-----------------------------------------
Tambah Antrian
-----------------------------------------
Nama Barang : Penghapus
Nomor Antrian ke-2
Tambah Antrian Sukses...
============================================
MENU ANTRIAN
============================================
1. Tambah Antrian
2. Proses Antrian
3. Lihat Antrian
4. Selesai
Pilih : 3
Panjang Antrian : 2
Daftar Antrian :
1.Pensil
2.Penghapus
============================================
MENU ANTRIAN
============================================
1. Tambah Antrian
2. Proses Antrian
3. Lihat Antrian
4. Selesai
Pilih : 2
Proses Antrian Sukses...
Pensil keluar
============================================
MENU ANTRIAN
============================================
1. Tambah Antrian
2. Proses Antrian
3. Lihat Antrian
4. Selesai
Pilih : 2
Proses Antrian Sukses...
Penghapus keluar
============================================
MENU ANTRIAN
============================================
1. Tambah Antrian
2. Proses Antrian
3. Lihat Antrian
4. Selesai
Pilih : 4
============================================
TERIMA KASIH!
============================================
------------------------------------------------------------------------
BUILD SUCCESS
------------------------------------------------------------------------
Total time: 39.954 s
Finished at: 2023-06-16T18:12:54+07:00
------------------------------------------------------------------------
Tampilan Program
.png)
Comments
Post a Comment