Contoh Implementasi Queue
Contoh Implementasi Queue
Kasus:
- Jika antrian sudah berisi, tampilkan nomor antrian untuk kedua antrian
- jika antrian sudah dilayani, hapus data dari antrian lalu tampilkan antrian
berikutnya.
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
char data[10];
} NODE;
NODE *frontCS;
NODE *rearCS;
NODE *frontTL;
NODE *rearTL;
void deleteCS();
void deleteTL();
void main(){
int choice;
NODE *ptr;
while(choice != 5){
system("CLS");
printf("======================================\n");
if(peekCS(ptr)!=NULL)
if(peekTL(ptr)!=NULL)
printf("ANTRIAN Teller: %s\n", peekTL(ptr));
printf("======================================\n");
printf("5. Exit\n");
printf("======================================\n");
scanf("%d",& choice);
printf("======================================\n");
switch(choice){
case 1: n = &noCS;
insertCS(n);
noCS++;
break;
case 2: n = &noTL;
insertTL(n);
noTL++;
break;
case 3: deleteCS();
break;
case 4: deleteTL();
break;
case 5: exit(0);
break;
default:
char kd[10];
char output[4];
if(i==1)
strcpy(kd, "CS");
else
strcpy(kd, "TL");
strcat(kd, output);
return kd;
NODE *ptr;
char item[10];
printf("\nOVERFLOW\n");
return;
else{
strcpy(ptr->data, item);
if(frontCS == NULL){
frontCS = ptr;
rearCS = ptr;
else{
rearCS = ptr;
rearCS->next = NULL;
NODE *ptr;
char item[10];
if(ptr == NULL){
printf("\nOVERFLOW\n");
return;
else{
strcpy(ptr->data, item);
if(frontTL == NULL){
frontTL = ptr;
rearTL = ptr;
else{
rearTL = ptr;
rearTL->next = NULL;
}
void deleteCS(){
NODE *ptr;
if(frontCS == NULL){
printf("\nUNDERFLOW\n");
return;
else{
ptr = frontCS;
free(ptr);
void deleteTL(){
NODE *ptr;
if(frontTL == NULL){
printf("\nUNDERFLOW\n");
return;
else{
ptr = frontTL;
//NODE *ptr;
ptr = frontCS;
if(frontCS == NULL){
printf("ANTRIAN CS KOSONG...!\n");
else{
//NODE *ptr;
ptr = frontTL;
if(frontTL == NULL){
else{