Basic Learning and Assignment+Solution on C Programming (PART 1)

Hello guys! Welcome back to my blog.

I'm planning to be productive during my holiday. Now, I'm gotta share about my assignements on doing C Programming Class. So enjoy.
According to me, studying C is not quite hard before you know Pointer, linked-list, etc. Hahahaa~
Because what I want to show you is the basic of C, so we don't go to pointer and linked-list further ^^
**Once again, forgive me.. Some commands are in Bahasa Indonesia

1. Calculate Debet Card on C

#include
#include

//menghitung pengeluaran dari kartu debet

int main()
{
/*Declare variabel*/
int total_tabungan=500000;
int bayar;
char password[25];
int pass[4]={1,2,3,4}; //password kartu debet yang dijadikan acuan
int i;
char input;



/*Interface Program */

system("cls"); //clear sistem
for (i=0;i<100 font="" i="">
{
password[i]=getch(); 
if (password[i]=='\r') //jika command enter maka password entry berhenti
{
password[i]=NULL;
break;
}
else if (password[i]=='\b') // jika command backspace
{
if(i!=0)printf("\b \b"); // kursor kembali ke digit sebelumnya
password[i]=NULL;
password[i-1]=NULL;
i=i-2; //digit dikurang 2
if(i<-1 i="-1;</font">
continue;
}
printf("*"); //entry password ditampilkan dalam karakter * agar tak terlihat
}


printf(" %s", password);

     if(password==pass) // membandingkan nilai string password input dan password asli
{
 
system("cls");
printf("                                 ** KELOMPOK ** \n                           Adhelia Irawan | 1206245216 \n                Claudia Khansa' Atikah H. | 1206245216 \n                         Ismi Rosyiana F. | 1206245216");
printf("\n\n                           JUMLAH SISA TABUNGAN ANDA ADALAH SEBESAR  : \n");
printf("                                %d",total_tabungan);
printf("\n\nPilih transaksi yang ingin anda lakukan ");
printf("\n 1. Pembayaran (press 1)");
printf("\n 2. Tarik Tunai(press 2)");
printf("\n  Masukkan input:  ");scanf("%s", &input);
if(input=='1')
{
printf("Masukkan nominal pembayaran dalam rupiah   :  "); scanf("&d", bayar);
if(bayar<=total_tabungan)
printf(" Apakah anda yakin akan melakukan transaksi sebesar Rp %d,00 ?" , bayar);
else printf(" Maaf, saldo anda tidak mencukupi");
}
else if (input=='2')
{
system("cls");
printf("\n\n\n\n ====Terimakasih telah menggunakan kartu Debet Ceria====");
}
getch();
}

else 
{
system("cls");
printf("\n\n  Password yang anda masukkan salah,\n\n  Silahkan coba lagi \n\n  ===>1(lanjut), 2(keluar dari menu)<=== \n");
printf("\n  Masukkan input:  ");scanf("%s", &input);
if(input=='1')main();
else if (input=='2')
{
system("cls");
printf("\n\n\n\n ====Terimakasih telah menggunakan kartu Debet Ceria====");
}
else (printf("Input yang anda masukkan salah, silahkan menggesek kartu lagi"));
getch();
}


}

2. DVD Rental Program Using C


/*library declaration*/
#include
#include
#include
#include
#include
/*inisialisasi*/
void koleksi(char pilem);
int submenu(char pilih);
int booking(int y);

void selesai();
void sinopsis (char pilem);
int setting();
int returning();
char input[20];
int kode[15]={234,442,553,643,464,643,532,129,439,321,421};
int harga[15]={10000,12000,5700,4500,4000,6000,5500,3300,12500,9500,7800};
char genre[50][50]={"Thriller","Horror\t","Action\t","Family\t","Drama\t","Drama\t","Shonen\t","Drama\t","Adventure","Fiction\t"};
char bulanNum[15][15]={"Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"};
char judul[50][50]={"The Amazing Spiderman\t","Insidious 2\t\t\t","Fast and Furious 6\t\t","Lilo and Stich\t\t","Les Miserables\t\t","Juno\t\t\t\t","Naruto\t\t\t","August Rush\t\t\t","The Spiderwick Chronicles\t","Kamen Rider\t\t\t"};
char header[500]={"===============================================================================\n\t\t\t\tDVD RENTAL\n\n\t\t\tProgram Rental DVD Kelompok 3\n===============================================================================\n"};
int balik,set_tanggal=22052014,set_denda=1000,rtrn,y,dvd;
char pilem;
int status[15]={3,1,1,0,4,0,1,2,1,3},c=0;
int *p;


struct data{ //struct declaration
char username[10];
int tglpinjam,date[6],tanggal,tanggalKembali,bulanKembali,j,tahun,bulan,i,tahunKembali,tanggalNow,bulanNow,tahunNow,savetemp;
char namaDepan[20];
char namaBelakang[20];
};

struct data user[20];

int main() { //main program
char choose;
char back;
system("cls");
system("color F0");
printf("%s\n",header);

printf("\t\t   _______________               |** **|________\n");
printf("\t\t   |  ___________  |             |**-**|_____ _  |\n");
printf("\t\t   | |           | | R E N T A L | |           | |\n");
printf("\t\t   | |   0   0   | |    D V D    | |   0   0   | |\n");
printf("\t\t   | |     -     | |             | |     -     | |\n");
printf("\t\t   | |   (___)   | |  **** ****  | |   (___)   | |\n");
printf("\t\t   | |___     ___| | *********** | |___________| |\n");
printf("\t\t   |_____|*_*|_____| *********** |_______________|\n");
printf("\t\t     _|__|* *|_|_.....******** ...._ |________|_\n");
printf("\t\t --------------------   *** --------------------\n");
printf("\t\t ----------------------  * --------------------\n\n");

printf("\t\t\tTekan Enter untuk masuk main menu...\n\n");
getch();
system("cls");
system("color 0F");
printf("%s",header);
printf("\t\t\t      Menu\n\n");
printf("\t\t\t\t1. Daftar Koleksi\n");
printf("\t\t\t\t2. Peminjaman\n");
printf("\t\t\t\t3. Pengembalian\n");
printf("\t\t\t\t4. Setting Tanggal&Denda\n");
printf("\t\t\t   Masukkan input : \n\n");
scanf("%s",&choose);
submenu(choose);

return 0;
} /*end of main function*/
int berakhir()
{
printf("%s\n",header);
selesai();
}
bool check_int(char a[4]){
    int k;
    int n=strlen(a);
  for(k = 0; k < n; k++){
    if(!isdigit(a[k])){
      return true;
    }
  };
  return false;
}
int submenu(char pilih)
{
char pilem;
char kaset[3];

switch(pilih)

{
case'1':
system("cls");
printf("%s",header);
for(user[c].i=0;user[c].i<10 c="" i="" p="" user=""> {
printf("%d. %s\n",user[c].i+1,judul[user[c].i]);
}
printf("\n\t\t\tMasukkan kode DVD (tekan 0 untuk exit) : ");
scanf("%s",&pilem);
if(pilem=='0')main();
koleksi(pilem);
break;

case '2':
system("cls");
system("color 0E");
printf("%s",header);
printf("\n\tJUDUL DVD\t\tGENRE\t\tKODE\tHARGA\t       STOCK\n----------------------------------------------------------------------------\n");
for(user[c].i=0;user[c].i<10 c="" i="" p="" user=""> {
printf("%d. %s%s\t%d\t%d\t\t%d\n",user[c].i+1,judul[user[c].i],genre[user[c].i],kode[user[c].i],harga[user[c].i],status[user[c].i]);
}

printf("\nKeterangan:\nSTOCK ---> JUMLAH AVAILABLE\tSTATUS 0---> NON AVAILABLE\n");
printf("\n\t\tMasukkan kode DVD untuk booking(0 untuk kembali)  ");
scanf("%s",&kaset);
        while(check_int(kaset))
{
   printf("\n\t\t\tInput salah!\n\t\t\tPilih judul DVD (tekan 0 untuk exit) : ");
            scanf("%s",&kaset);
}
        dvd= strtol(kaset, NULL, 10);
system("cls");
system("color 0F");
if(dvd==0)main();
else
{
for (user[c].i=0;user[c].i<15 c="" i="" p="" user=""> {
if (dvd==kode[user[c].i])
{
if (status[user[c].i]==0)
{
printf("\n\n\t\tDVD yang anda pilih sedang NON AVAILABLE.\n\t\t\tSilahkan pilih yang lain \1\n");
getch();submenu('2');
}
else{
booking(dvd);
}
break;
}
}
if (user[c].i==15)
{
printf("\n\t\tKODE SALAH, masukan kode DVD lagi\1");
getch();submenu('2');
}

}
break;

case '3':returning();break;

case '4':setting();break;

default:
printf("Input Salah. Tekan Enter dan input lagi! ");getch();main();
}
}


void koleksi(char pilem)
{
char back;
system("cls");
printf("%s",header);
sinopsis(pilem);
printf("\n\nMasukkan 1 untuk kembali ke main menu, 0 untuk exit -> ");scanf("%s",&back);
if(back=='1')submenu('1');
else if(back=='0')
{
system("cls");
selesai();
}
else
{
system("cls");
printf("\n\n\n\t\t\tINPUT SALAH!\n\t\tKlik enter untuk kembali");
getch();main();
}

}

void sinopsis (char pilem)
{
switch (pilem)
{
case '1':
printf("\n\t\t\t    THE AMAZING SPIDERMAN 2\n\n");
printf("GENRE :\n-----\nthriller\n\n");
printf("SINOPSIS :\n--------\nDiceritakan hubungan Peter dan Gwen (Emma Stone) masih terjalin dengan baik.\nMeski terkadang pesan terakhir ayah Gwen untuk menjauhi anaknya masih\nbegitu mengganggunya. Ditengah kesibukkannya, muncul masalah baru, sebuah\npenjahat kuat mengancam keselamatan penduduk kota New York. \n\n");
printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
case '2':
printf("\n\t\t\t    INSIDIOUS  2\n\n");
printf("GENRE :\n-----\nHorror\n\n");
printf("SINOPSIS :\n--------\nFilm Insidious 2 akan memperlihatkan kehidupan keluarga Josh Lambert yang mulai hidup normal. Namun semuanya berubah mencekam ketika dentingan piano mulai\nmengalun sendiri, benda-benda mati yang bergerak sendiri dan sesosok hantu\nwanita dengan pakaian kuno menampakan wujudnya kembali. \n\n");
printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
case '3':
printf("\n\t\t\t  Fast and Furious 6\n\n");
printf("GENRE :\n-----\nCrime Fiction, Action\n\n");
printf("SINOPSIS :\n--------\n Alur cerita mungkin masih mengacu pada perseteruan dua kelompok yang sama-sama berniat mencuri benda-benda berharga. Dan Dwayne Johnson akan terus memburu\nDom yang diperankan oleh Vin Diesel. Sosok Letty akan hadir kembali di Fast\nSix ini yang diperankan oleh Michelle Rodriguez. \n\n");
printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
case '4':
printf("\n\t\t\t   Lilo and Stich 2\n\n");
printf("GENRE :\n-----\nFamily\n\n");
printf("SINOPSIS :\n--------\nStitch masih belum terbiasa tinggal di Bumi. Lilo mencoba menghiburnya\ndengan mengatakan bahwa Stitch adalah sahabat yang istimewa bagi dirinya.\nTiba-tiba ada suara benturan keras dari luar. \n\n");
printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
case '5':
printf("\n\t\t\t   Les Miserabeles\n\n");
printf("GENRE :\n-----\nDrama\n\n");
printf("SINOPSIS :\n--------\nJean Valjean dijatuhi hukuman penjara selama 19 tahun gara-gara mencuri\nsebongkah roti. Setelah bebas, Valjean mengubah namanya menjadi Monsieur\nMadeleine, dan berhasil menjadi seorang wali kota di sebuah kota kecil di\nPerancis.\n\n");
printf("RATING :\n-----\n\6 \6 \6 \n");
break;
case '6':
printf("\n\t\t\t   Juno\n\n");
printf("GENRE :\n-----\nDrama, Romance\n\n");
printf("SINOPSIS :\n--------\nAwalnya, Juno (Ellen Page) terlibat hubungan seks pra nikah dengan pacarnya\nPaulie Bleeker (Michael Cera). Hubungan ini mengakibatkan Juno yang baru\nberusia 16 tahun hamil.\n\n");
printf("RATING :\n-----\n\6 \6\n");
break;
case '7':
printf("\n\t\t\t   Naruto \n\n");
printf("GENRE :\n-----\nComedy, Action, Shonen\n\n");
printf("SINOPSIS :\n--------\nKekacauan terjadi di desa Konoha dan korban banyak berjatuhan....akhirnya ada\nseseorang yang berhasil menyegel Kyuubi itu ke tubuh Naruto, putranya\nsendiri,seseorang yang berhasil menyegel siluman rubah ekor itu dikenal sebagai Yondaime Hokage,Hokage ke 4 atau Namikaze Minato.\n\n");
printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
case '8':
printf("\n\t\t\t   August Rush\n\n");
printf("GENRE :\n-----\nthriller\n\n");
printf("SINOPSIS :\n--------\nFilm ini bercerita tentang seorang anak bernama Evan Taylor (Freddie Highmore)\nyang percaya dengan musik. Evan memiliki bakat bermain musik luar biasa\ndari orang tuanya. Ia bisa mendengar musik dari desauan angin, gemericik air,\nbahkan kilau cahaya. \n\n");
        printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
case '9':
printf("\n\t\t\t   The Spiderwick Chronicles\n\n");
printf("GENRE :\n-----\nthriller\n\n");
printf("SINOPSIS :\n--------\nFilm ini dibuka dengan Arthur Spiderwick (David Strathairn) berjalan cepat-cepat ke ruang kerjanya. Ruangan yang dipetieskan dengan bug dan makhluk aneh\ndalam stoples. Dia mulai panik mengumpulkan buku, dan ketika ia mengikat dan\nperangko tandanya ke cover, jijik suara aneh yang terdengar di luar, makhluk dari segala\nmacam mengeluh. \n\n");
        printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
        break;
case '.':
printf("\n\t\t\t    Kamen Rider\n\n");
printf("GENRE :\n-----\nthriller\n\n");
printf("SINOPSIS :\n--------\nSeri ini berlangsung di dunia yang sedang dirongrong oleh organisasi teroris\nmisterius bernama Shocker yang ingin menguasai dunia. Shocker merekrut agen-agennya melalui penculikan, mengubahnya menjadi cyborg/mutan, lalu mencuci otak mereka. Kamen Rider Ichigo/Hongo Takeshi adalah seorang mahasiswa biasa yang mempelajari biokimia di universitas Jonan dan seorang pembalap motor amatir.\n\n");
        printf("RATING :\n-----\n\6 \6 \6 \6 \6 \n");
break;
default:
printf("Input Salah. Tekan Enter dan input lagi! ");getch();submenu('1');
}
}
int pangkat(int x, int y)
{
int r = 1;
for(user[c].i=0; user[c].i r = r * x;
}
return r;
}

int check_tanggal(char tanggalan[8])
{
    int c= strtol(tanggalan, NULL, 10);
    int bln=0,thn=0;
    if (strlen(tanggalan)!=8||check_int(tanggalan))
    {
        minta_tanggal();
    }
    else
    {   int s;

        for (s=0;s<4 p="" s="">        {
thn=thn+(c%10*pangkat(10,s));
c=(c-c%10)/10;
        }
       for (s=0;s<2 p="" s="">        {
bln=bln+(c%10*pangkat(10,s));
c=(c-c%10)/10;
        }
        if (bln>12)
        {
           minta_tanggal();
        }
        else
        {
            int x=max_hari(bln);
            if (c>x)
            {
             minta_tanggal();
            }
            else
            {
                int f=strtol(tanggalan, NULL, 10);
                return f;
            }

        }

    }
}
int minta_tanggal()
{   char tanggalan[8];
    printf("Input tanggal salah,silahkan input lagi\nTanggal pinjam (ddmmyyyy): ");scanf("%s",&tanggalan);check_tanggal(tanggalan);
}

int booking(int y)
{
    int tanggalan[8];
system("cls");

printf("%s",header);

printf("\t\t\tISI DATA\n\n");
c++;
printf("Username\t: ");scanf("%s",&user[c].username);
printf("Nama Depan\t: ");scanf("%s",&user[c].namaDepan);
printf("Nama belakang\t: ");scanf("%s",&user[c].namaBelakang);
printf("Tanggal pinjam (ddmmyyyy): ");scanf("%s",&tanggalan);

    user[c].tglpinjam= check_tanggal(tanggalan);
user[c].tahun=0;
for (user[c].i=0;user[c].i<4 c="" i="" p="" user=""> {
user[c].tahun=user[c].tahun+(user[c].tglpinjam%10*pangkat(10,user[c].i));
user[c].tglpinjam=(user[c].tglpinjam-user[c].tglpinjam%10)/10;
}
user[c].bulan=0;
for(user[c].i=0;user[c].i<2 c="" i="" p="" user=""> {
user[c].bulan=user[c].bulan+(user[c].tglpinjam%10*pangkat(10,user[c].i));
user[c].tglpinjam=(user[c].tglpinjam-user[c].tglpinjam%10)/10;
}
int x;
int month=12;
x=max_hari(user[c].bulan);
user[c].tanggalKembali=user[c].tglpinjam+7;
if (user[c].tanggalKembali>x)
{   user[c].tanggalKembali=user[c].tanggalKembali-x;
user[c].bulanKembali=user[c].bulan+1;
user[c].tahunKembali=user[c].tahun;
if(user[c].bulanKembali>month)
{
user[c].bulanKembali=1;
user[c].tahunKembali=user[c].tahun+1;
}
}
else
{
user[c].bulanKembali=user[c].bulan;
user[c].tahunKembali=user[c].tahun;
}
pinjam(status,pilem);
system("cls");
printf("%s",header);
printf("\t\t\t\tS U M M A R Y\n\t\t-------------------------------------------\n\n");
printf("Username\t\t: %s\n",user[c].username);
printf("Nama\t\t\t: %s %s\n",user[c].namaDepan,user[c].namaBelakang);
for(user[c].i=0;user[c].i<10 c="" i="" p="" user=""> {
if(y==kode[user[c].i])
{
user[c].savetemp = user[c].i;
status[user[c].i]-=1;
printf("DVD yang dipinjam\t: ");
printf("%s\n",judul[user[c].i]);
printf("Tanggal Pinjam\t\t: %d %s %d\n",user[c].tglpinjam,bulanNum[user[c].bulan-1],user[c].tahun);
printf("Tanggal Kembali\t\t: %d %s %d\n",user[c].tanggalKembali,bulanNum[user[c].bulanKembali-1],user[c].tahunKembali);
printf("Total biaya\t\t: Rp %d\n",harga[user[c].i]);
printf("\nTekan 1 untuk kembali, 0 untuk exit..");scanf("%s",&pilem);
if(pilem=='1')main();
else {
system("cls");
berakhir();
}
}
}

}

int pinjam (int status[15], int nama)
{   p=&status[0];
int m;
for (m=0;m<15 m="" p=""> {
if (nama==kode[m])
{
int k=status[m];
status[m]=k-1;
break;
}
}
}
int kembali(int status [15],int nama)
{
p=&status[0];
int m;
for (m=0;m<15 m="" p=""> {
if (nama==kode[m])
{
int k=status[m];
status[m]=k+1;
break;
}
}
}
int max_hari(int bulan)
{
if(bulan==1||bulan==3||bulan==5||bulan==7||bulan==8||bulan==10||bulan==13)
{
return 31;
}
else if(bulan==2)
{
return 28;
}
else
{
return 30;
}
}
int returning()
{
system("cls");
printf("%s",header);
printf("\n\t\t\t\tP E N G E M B A L I A N\n\t\t\t--------------------------------------\n\n");
printf("Masukkan 0 untuk kembali ke main menu  \n\n\n");
printf("Username\t\t\t\t: ");scanf("%s",&input);

if(input[0]=='0')
{
main();
}

for(c=0;c<20 c="" p=""> {

if(strcmp(input,user[c].username)==0)
{
for (user[c].j=0;user[c].j<10 c="" j="" p="" user=""> {


printf("\n\nDATA PINJAM:\n\n");
printf("Kode DVD yang dipinjam\t\t\t: %d\n",kode[user[c].savetemp]);
printf("Judul DVD yang dipinjam\t\t\t: %s\n",judul[user[c].savetemp]);
printf("Tanggal Pinjam\t\t\t\t: %d %s %d\n",user[c].tglpinjam,bulanNum[user[c].bulan-1],user[c].tahun);
printf("Tanggal Kembali\t\t\t\t: %d %s %d\n",user[c].tanggalKembali,bulanNum[user[c].bulanKembali-1],user[c].tahunKembali);
// kembali(status,kode[user[c].i]);
user[c].tanggalNow=set_tanggal;
user[c].tahunNow=0;
for (user[c].i=0;user[c].i<4 c="" i="" p="" user=""> {
user[c].tahunNow=user[c].tahunNow+(user[c].tanggalNow%10*pangkat(10,user[c].i));
user[c].tanggalNow=(user[c].tanggalNow-user[c].tanggalNow%10)/10;
}
user[c].bulanNow=0;
for(user[c].i=0;user[c].i<2 c="" i="" p="" user=""> {
user[c].bulanNow=user[c].bulanNow+(user[c].tanggalNow%10*pangkat(10,user[c].i));
user[c].tanggalNow=(user[c].tanggalNow-user[c].tanggalNow%10)/10;
}
rtrn=0;
if(user[c].bulanNow>user[c].bulanKembali||user[c].tanggalNow>user[c].tanggalKembali||user[c].tahunNow>user[c].tahunKembali)
{
if(user[c].tahunNow>user[c].tahunKembali)
{
for (user[c].i=12;user[c].i>user[c].bulanKembali;user[c].i--)
{
rtrn=rtrn+max_hari(user[c].i);
}
if(user[c].tanggalNow {
for(user[c].i=1;user[c].i {
rtrn=rtrn+max_hari(user[c].i);
}
rtrn=rtrn+(user[c].tanggalNow+max_hari(user[c].bulanNow-1)-user[c].tanggalKembali);
}
else
{
for(user[c].i=1;user[c].i<=user[c].bulanNow;user[c].i++)
{
rtrn=rtrn+max_hari(user[c].i);
}
rtrn=rtrn+(user[c].tanggalNow-user[c].tanggalKembali);
}
}
else
{   int k=user[c].bulanKembali;
if (user[c].tanggalNow {
for(user[c].i=1;user[c].i<(user[c].bulanNow-user[c].bulanKembali);user[c].i++)
{
rtrn=rtrn+max_hari(k);
k++;
}
rtrn=rtrn+(user[c].tanggalNow+max_hari(user[c].bulanNow-1)-user[c].tanggalKembali);
}
else
{
for(user[c].i=1;user[c].i<=(user[c].bulanNow-user[c].bulanKembali);user[c].i++)
{
rtrn=rtrn+max_hari(k);
k++;
}
rtrn=rtrn+(user[c].tanggalNow-user[c].tanggalKembali);
}
}
printf("Keterlambatan pengembalian\t\t: %d hari\n",rtrn);
printf("Denda\t\t\t\t\t: %d",set_denda*rtrn);
}



else
printf("\n\n\t\t-NO CHARGE-\n");


printf("\n\nTekan 1 untuk kembali,2 untuk mengembalikan DVD, 0 untuk exit... ");scanf("%d",&balik);
if (balik==1)
{
main();
}
else if(balik==0){
system("CLS");
berakhir();
getch();
// printf("%s",header);
// printf("%s",footer);
}
else{

status[user[c].savetemp]+=1;
system("cls");
printf("%s\n\n",header);
printf("Terimakasih telah mengembalikan DVD");
printf("\n\nTekan enter untuk kembali...");
getch();
main();
}/*end else*/

} /*end for*/
} /*end string comparasion*/
} /*end for conter struct*/

system("cls");
printf("%s",header);
printf("\n\nMaaf, username tidak terdaftar!\n\nSilahkan tekan enter...");
getch();
returning();

}

int setting()
{
    system("cls");
    printf("%s",header);
char balik;
printf("Set tanggal hari ini (ddmmyyyy):\n");scanf("%d",&set_tanggal);
if(set_tanggal%10000!=2014)
    {
        printf("Input salah! Tekan enter dan input lagi");getch();
        setting();
    }
printf("Set denda perhari\t:\n");scanf("%d",&set_denda);
system("cls");
printf("%s",header);
printf("\nDATE AND CHARGE ALREADY SETTLED!");
printf("\n\nTekan 1 untuk back to main menu, 0 untuk exit program");scanf("%s",&balik);
if (balik=='1')main();
else {
system("cls");
berakhir();
}

}

void selesai()
{

int blink;
for(blink = 0; blink < 4; blink++)
{
printf("\n\3   \3   \3    \3\t\3  \3  \3  \3");
Sleep(50);
system("cls");
printf("");
Sleep(50);
system("cls");
printf("*  *  *  *\t  *  \3  \3  \3  \3  * \t*  *  *");
Sleep(50);
system("cls");
printf("\n\n\n*   *   *  \3\t\t    *    *    *    \3    \3    \3 ");
system("cls");
printf("\n\n\n\n\t\t\t\t \3  *  *  *  *  *  *  *  *  \3   \3  \3  \3 ");
Sleep(50);
system("cls");
printf("\n\n\n\n\n*   *   *   *  *  *  *  *  *  *  *  \3  \3   \3  \3  \3 ");
Sleep(50);
system("cls");
printf("\n\n\n\n\n\3   \3   \3   \3  \3  \3  \3  \3  \3  \3  \3  \3  \3   \3  \3  \3 ");
Sleep(50);
system("cls");
}
    system("color 0B");
printf("\n\n\n|:::::::::::::| |::    :    |:::::|    |::   :|  |::  :::   ::::::::\n");
printf("    ::::        |::    :   |:     :|   |: :: :|  |:: ::     :\n");
printf("    ::::        |:::::::  |:::::::::|  |:  :::|  |:::        ::::::\n");
printf("    ::::        |::    :  |:       :|  |:    :|  |:::              ::\n");
printf("    ::::        |::    :  |:       :|  |:    :|  |:: ::             :\n");
printf("    ::::        |::    :  |:       :|  |:    :|  |::   :::  ::::::::\n");
getch();
}