Exemple #1
0
int main(int argc, char const* argv[])
{
    Queue queue = BuildQueue(5);
    Enqueue(queue, 1);
    Enqueue(queue, 2);
    Enqueue(queue, 4);
    Enqueue(queue, 5);
    Enqueue(queue, 6);
    Dequeue(queue);
    Enqueue(queue, 7);
    ShowQueue(queue);
    DestroyQueue(queue);
}
Exemple #2
0
void main() {
//Deklarasi Antrian dan data penampung.
    Queue QFest,QTribun;
    Data NewVal;
    double TotalJumlah=0,TotalT=0,TotalF=0;
    int menu;

//Inisialisasi Antrian
    CreateEmpty(&QFest);
    CreateEmpty(&QTribun);

//showMenu
    do {
        system("CLS");
        printf("===== KONSER TONG TONG BAND =====\n");
        printf("1. Masukan Antrian \n");
        printf("2. Tampil Antrian Tribun \n");
        printf("3. Tampil Antrian Festival \n");
        printf("4. Transaksi Antrian Tribun \n");
        printf("5. Transaksi Antrian Festival \n");
        printf("6. Jumlah Pendapatan \n");
        printf("7. TUGAS - Jumlah Pendapatan \n");
        printf("================================= \n");
        printf(" >> Masukan Menu : ");
        scanf("%d",&menu);

        switch(menu) {
        case 1 ://Input Antrian
            printf(" Nama                         : ");
            fflush(stdin);
            gets(NewVal.nama);
            printf(" No Hp                        : ");
            fflush(stdin);
            gets(NewVal.no_hp);

            //Pemilihan Jenis Tiket
            while(strcmpi(NewVal.jenis_tiket,"festival")!=0 && strcmpi(NewVal.jenis_tiket,"tribun")!=0) {
                printf(" Jenis Tiket(festival/tribun) : ");
                fflush(stdin);
                gets(NewVal.jenis_tiket);
            }
            if(strcmpi(NewVal.jenis_tiket,"festival")==0) {
                //Cek AntrianFestival
                if (isFull(QFest)) {
                    printf("\n antrian penuh . . .");
                    strcpy(NewVal.jenis_tiket,"-");
                    break;
                }
                //Auto Tiket
                NewVal.no_antrian=AutoID(&QFest);
                printf(" Nomor Tiket                  : %d \n",NewVal.no_antrian);
                //Prosesur Add
                Add(&QFest,NewVal);

            }
            if(strcmpi(NewVal.jenis_tiket,"tribun")==0) {

                //Cek AntrianTribun
                if (isFull(QTribun)) {
                    printf("\n antrian penuh . . .");
                    strcpy(NewVal.jenis_tiket,"-");
                    break;
                }
                //Auto Tiket
                NewVal.no_antrian=AutoID(&QTribun);
                printf(" Nomor Tiket                  : %d \n",NewVal.no_antrian);
                //Prosesur Add
                Add(&QTribun,NewVal);
            }


            //Reset Jenis Tiket
            strcpy(NewVal.jenis_tiket,"-");
            break;
        case 2 :
            //Cek Antrian Kosong
            if (isEmpty(&QTribun)) {
                printf("\n antrian kosong . . .");
                break;
            }
            //Prosedur Show
            ShowQueue(QTribun);
            break;
        case 3 :
            //Cek Antrian Kosong
            if (isEmpty(&QFest)) {
                printf("\n antrian kosong . . .");
                break;
            }
            //Prosedur Show
            ShowQueue(QFest);
            break;
        case 4 :
            if (isEmpty(&QTribun)) {
                printf("\n antrian kosong . . .");
                break;
            }
            //Print Transaksi
            printf("\n ====== Transaksi Tribun====== \n");
            JumlahPendapatan(QTribun,&TotalJumlah,&TotalT,&TotalF);
            Delete(&QTribun);


            break;
        case 5 :
            if (isEmpty(&QFest)) {
                printf("\n antrian kosong . . .");
                break;
            }
            //Print Transaksi
            printf("\n ====== Transaksi Festival====== \n");
            JumlahPendapatan(QFest,&TotalJumlah,&TotalT,&TotalF);
            Delete(&QFest);

            break;
        case 6 :
            printf("\n Total Pendapatan          = %lf",TotalJumlah);
            break;
        case 7 :
            printf("\n Total Pendapatan Tribun   = %lf",TotalT);
            printf("\n Total Pendapatan Festival = %lf",TotalF);
            printf("\n---------------------------------------- ++");
            printf("\n Total Pendapatan          = %lf",TotalT+TotalF);
            break;
        case 8 :
            printf(" Head %d \n",QTribun.head);
            printf(" Tail %d \n",QTribun.tail);


        }
        getch();
    } while(menu!=0);

}