You are on page 1of 1

LATIHAN QUEUE switch (pilihan){

case 1 :
#include <stdio.h> {
#include <conio.h> if (isFull()==1)
#include <string.h> {
typedef struct queue{ printf("antrian penuh\n");
int head; getch();
int tail; }
char data [15][20]; else
}; {
#define max 15 printf("masukan data yang akan di masukan:");
queue antri; scanf ("%s",&input);
char input[20]; enqueue(input);
void enqueue (char d[20]){ }
antri.head=0; break;
antri.tail++; }
strcpy(antri.data[antri.tail],d); case 2:
printf("data berhasil dimasukan\n"); {
} if(isEmpty()==1){
void dequeue(){ printf("-----------------\n");
printf("data '%s' terambil\n",antri.data[antri.head]); printf("tumpukan Kosong\n");
for (int i=antri.head;i<=antri.tail;i++) printf("-----------------\n");
strcpy(antri.data[i],antri.data[i+1]); }
antri.tail--; else
} {
int isEmpty(){ printf("-----------------\n");
if(antri.tail==-1){ dequeue();
antri.head=-1; printf("-----------------\n");
return 1; }
} break;
else }
return 0; case 3:
} {
int isFull(){ printf("-----------------\n");
if (antri.tail==max-1) clear();
return 1; printf("-----------------\n");
else break;
return 0; }
} case 4:
void clear(){ {
antri.head=antri.tail=-1; if (isEmpty()==1)
printf("semua data terhapus\n"); {
} printf("-----------------\n");
void print(){ printf("tumpukan kosong\n");
for(int i=0;i<=antri.tail;i++) printf("-----------------\n");
printf("%s\n",antri.data[i]); }
} else
void main(){ {
int pilihan; printf("-----------------\n");
antri.head=-1; print();
antri.tail=-1; printf("-----------------\n");
do }
{ }
printf("1.Enqueue data\n"); }
printf("2.Dequeue data\n"); }
printf("3.Clear data\n"); while(pilihan!=5);
printf("4.Print data\n"); getch();
printf("5.Keluar\n"); }
printf("Masukan No. Pilihan Anda :");
scanf("%i",&pilihan);

You might also like