Sabtu, 23 Oktober 2010

QmmeT

#include “stdio.h”
void main()
{ int queue[5];
int depan = -1;
int belakang = -1;
int pilihan, data, i;

do{
printf(“MENU\n”);
printf(“1. ENQUEUE\n2. DEQUEUE\n3. VIEW\n4. EXIT\n”);
printf(“Pilihan = “); scanf(“%d”, &pilihan);
switch (pilihan)
{
case 1: //enqueue
//apakah queue belum penuh?
if (belakang < 4 ) { printf(“Data Masuk = “); scanf(“%d”, &data); queue[belakang+1] = data; belakang++; if (belakang == 0) depan = 0; } else printf(“Queue penuh!\n”); break; case 2: //dequeue //apakah queue belum kosong? if (depan <= belakang) { printf(“Data keluar = %d\n”, queue[depan]); depan++; } else printf(“Queue kosong!\n”); break; case 3: for(i=depan; i<=belakang; i++) printf(“%d “, queue[i]); printf(“\n”); break; } }while (pilihan != 4); } import java.io.*; public class queue_array { private int maxsize; //maksimum ukuran queue private double [] queuearray; //array untuk menyimpan queue private int front; //indeks elemen terdepan private int rear; //indeks elemen paling belakang private int jumlah; //menyimpan jumlah total elemen yang ada public void inisiasi(int s) //inisialisasi queue { maxsize = s; queuearray = new double [maxsize]; front = rear = jumlah = 0; } public void enqueue(double data) { if (jumlah==maxsize) System.out.println(“Queue Penuh. “+data+” Tidak Bisa Masuk”); else { //System.out.print(rear+” “); queuearray[rear] = data; rear = (rear+1)%maxsize; jumlah++; System.out.println(data +” Masuk ke Queue”); } } public double dequeue() { double temp; if (jumlah==0) { System.out.println(“Queue Sudah Kosong”); return(-1); } else { temp = queuearray[front]; front = (front+1)%maxsize; jumlah–; System.out.println(temp + ” Keluar dari Queue”); return (temp); } } public void view() { System.out.print(“Isi Queue: “); if (jumlah > 0 && front < rear) //belum terjadi circular
for(int i=front; i0 && rear <= front) //terjadi circular
{
for(int i=front; i<=maxsize-1; i++) //bagian depan
System.out.print(queuearray[i] + " ");
for(int i=0; i System.out.print(queuearray[i] + " ");
}
System.out.println();
}
public static void main(String[] args)
{
queue_array queue = new queue_array();
queue.inisiasi(3);
queue.enqueue(2);
queue.enqueue(5);
queue.enqueue(3);
queue.enqueue(7);
queue.view();
queue.dequeue();
queue.dequeue();
queue.dequeue();
queue.dequeue();
queue.view();
queue.enqueue(8);
queue.enqueue(9);
queue.enqueue(7);
queue.enqueue(10);
queue.view();
queue.dequeue();
queue.view();
}
}

Tidak ada komentar:

Posting Komentar