Aplikasi komplek pemrograman bahasa C (Point of Sale)

 Berikut adalah aplikasi program dalam bahasa C:

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

char *barang[] =                                     //array barang dan pointer barang
{
    "SABUN MUKA",
    "SABUN CUCI",
    "PASTA GIGI",
    "SIKAT GIGI",
    "SABUN MANDI"
};
int *harga[] =                                        //array harga dan pointer harga
{
    5000,
    2000,
    4000,
    2000,
    3000
};
int *kode[] ={1,2,3,4,5};                             // array kode dan pointer kode
int a, b, c, d, e, f, g, hrg, qtys, totals, pajak, akhir;
int pick[5];
int qty[5];
int total[5];

void menu()                                                                                                //menampilkan menu awal
{
    printf("=============\n");
    printf("Point of Sale\n");
    printf("=============\n\n");
    printf("DAFTAR BARANG\n\n");
   
    printf("No.\tKode Barang\tNama\t\tHarga\n");
    int x;
    for(x=1;x<=5;x++)
    {
        printf("%i.\t%i\t\t%s\t%i\n", x, *(kode+5-x), *(barang+5-x), *(harga+5-x));
    }
}

void result()                                                                                            //menampilkan hasil akhir
{
    for(d=1;d<=c;d++)                                    //menghitung jumlah barang dan jumlah harga
    {
        qtys = qtys + qty[d];
        totals = totals + total[d];
    }
    pajak = (totals*10)/100;                            //menghitung pajak ppn
    akhir = totals + pajak;                                //menghitung jumlah yang harus dibayar
    printf("\nTransaksi selesai!\n");
    printf("\nNo.\tKode Barang\tNama barang\tHarga\tJumlah\ttotal\n");
    for(d=1;d<=c;d++)
    {
        printf("%i.\t%i\t\t%s\t%i\t%i\t%i\n", d, *(kode + pick[d]-1), *(barang + pick[d]-1), *(harga + pick[d]-1), qty[d], total[d]);   
    }
    printf("===============================================================\n");
    printf("TOTAL\t\t\t\t\t\t\%i\t%i\n", qtys, totals);
    printf("PPN '10persen'\t\t\t\t\t\t %i\n", pajak);
    printf("===============================================================\n");
    printf("HARUS DIBAYAR\t\t\t\t\t\t%i", akhir);
    getch();
}

void pilih()                                                                                            //proses memilih barang
{
    up:
    c = c+1;   
    in :
    printf("\nKode barang : ");
    scanf("%i", &pick[c]);                                        //memasukkan kode barang ke dalam array pick
    if (pick[c]==0)                                                            //mengakhiri proses transaksi
    {
        if(c==1)                                                //apabila mengakhiri transaksi tetapi belum melakukan transaksi
        {
            printf("\nSilahkan transaksi terlebih dahulu!\n");
            goto in;
        }
        else                                                    //mengakhiri proses transaksi setelah melakukan transaksi
        {
            c = c-1;
            goto bawah;
        }       
    }
    else if(pick[c]<0 || pick[c]>5)                                //jika kode barang tidak dalam range
    {
        printf("Kode tidak ditemukan!\n");
        goto in;
    }
    ulang :
    printf("Masukkan jumlah : ");
    scanf("%i", &qty[c]);                                        //memasukkan jumlah barang kedalam array qty
   
    hrg = *(harga + pick[c]-1);
    total[c] = hrg*qty[c];
    for(e=1;e<c;e++)
    {
        if(pick[e]==pick[c])                                                    //jika kode barang sudah pernah di input sebelumnya
        {
            int jum;
            jum = qty[e] + qty[c];   
            if(jum<=-1)                                            //jika jumlah barang kurang dari nol
            {
                total[c] = total[e];
                printf("Jumlah tidak boleh kurang dari nol!\n");
                goto ulang;
            }
            total[e] = total[c] + total[e];
            qty[e] = qty[c] + qty [e];
            c= c-1;
            goto down;   
        }
    }
   
    down:
    printf("\nNo.\tKode Barang\tNama barang\tHarga\tJumlah\ttotal\n");
    for(d=1;d<=c;d++)
    {
        printf("%i.\t%i\t\t%s\t%i\t%i\t%i\n", d, *(kode + pick[d]-1), *(barang + pick[d]-1), *(harga + pick[d]-1), qty[d], total[d]);   
    }
    goto up;
   
    bawah:
    result();                                                    //menampilkan void result
}
int main(int argc, char *argv[])
{
    menu();
    pilih();
    return 0;
}


Komentar

  1. https://drive.google.com/open?id=1gvQ_d1hh5kHlwDr9dksBh1dpUVVlbFaA

    BalasHapus

Posting Komentar

Postingan populer dari blog ini

Bahasa C# : cara membuat game POU sederhana dengan visual studio

Perpustakaan (Program aplikasi bahasa C)