- Back to Home »
- program sewa mobil
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <windows.h>
/*PROGRAM FUNGSI GOTOXY DI DEV C*/
void gotoxy(int x, int y)
{
COORD coord;
coord.X=x;
coord.Y=y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord);
}
//*PROGRAM UTAMA*//
char* jen(float n);
float har(float n );
float paj(float n);
main()
{
int a,banyak;
char nm_op[10];
float ttl_biaya_sewa;
struct
{
char nm_pyw[15];
int kode_mobil;
int lama_pinjam;
}pyw[5];
struct
{
float harga_sewa;
float pjk;
}dtmbl[5];
struct
{
float jlh_biaya;
float ttl_biaya;
float disk;
}dtsewa[5];
/*BERSIHKAN LAYAR DI DEV C*/
system("cls");
/*INPUT DATA*/
printf(" Chrome Rent A Car\n");
printf(" PT.Chrome P2K\n");
printf("--------------------------------------------------------------------\n");
printf("\nMasukkan Jumlah Penyewa : "); scanf("%d",&banyak);
printf("Masukkan Nama Pemilik : "); scanf("%s", &nm_op);
/*INPUT DATA PERULANGAN*/
for(a=1;a<=banyak;a++)
{
printf("\n==================================================================\n");
printf("Penyewa ke : %i\n",a);
printf("Nama Penyewa : "); scanf("%s", &pyw[a].nm_pyw);
printf("Kode Mobil [1] Minibus [2] Sedan [3] CUV : "); scanf("%i", &pyw[a].kode_mobil);
printf("Lama Pinjam (hari) : "); scanf("%i", &pyw[a].lama_pinjam);
}
for(a=1;a<=banyak;a++)
{
dtsewa[a].jlh_biaya=pyw[a].lama_pinjam * har(pyw[a].kode_mobil) + paj(pyw[a].kode_mobil);
if (pyw[a].lama_pinjam>20)
dtsewa[a].disk= dtsewa[a].jlh_biaya * 10 /100;
else
dtsewa[a].disk=0;
dtsewa[a].ttl_biaya= dtsewa[a].jlh_biaya - dtsewa[a].disk;
ttl_biaya_sewa= ttl_biaya_sewa + dtsewa[a].ttl_biaya;
}
/*BERSIHKAN LAYAR*/
system("cls");
/*OUTPUT DATA*/
gotoxy(30,1);printf("DAFTAR PENYEWA MOBIL\n");
gotoxy(27,2);printf(" PT. Chrome P2K\n");
gotoxy(1,4);printf("Nama operator : %s\n", &nm_op);
gotoxy(1,5);printf("----------------------------------------------------------------------------\n");
gotoxy(1,6);printf("No. Nama Kode Jenis Lama Harga Pajak Jumlah Diskon Total\n");
gotoxy(1,7);printf(" Penyewa Mobil Mobil Pinjam Sewa Biaya Biaya\n");
gotoxy(1,8);printf("----------------------------------------------------------------------------\n");
/*PROSES PERULANGAN UNTUK MENCETAK ISI DATA PADA LAPORAN*/
for (a=1; a<=banyak; a++)
{
gotoxy(1,8+a);printf("%d",a);
gotoxy(5,8+a);printf("%s",pyw[a].nm_pyw);
gotoxy(14,8+a);printf("%d",pyw[a].kode_mobil);
gotoxy(19,8+a);printf("%s",jen(pyw[a].kode_mobil));
gotoxy(27,8+a);printf("%d",pyw[a].lama_pinjam);
gotoxy(32,8+a);printf("%2.0f",har(pyw[a].kode_mobil));
gotoxy(41,8+a);printf("%2.0f",paj(pyw[a].kode_mobil));
gotoxy(48,8+a);printf("%2.0f",dtsewa[a].jlh_biaya);
gotoxy(58,8+a);printf("%2.0f",dtsewa[a].disk);
gotoxy(67,8+a);printf("%2.0f",dtsewa[a].ttl_biaya);
}
gotoxy(1,8+a);printf("----------------------------------------------------------------------------");
gotoxy(43,9+a);printf("Total Biaya Sewa : ");
gotoxy(67,9+a);printf("%2.0f",ttl_biaya_sewa);
getch();
}
/*MENENTUKAN JENIS MOBIL, HARGA SEWA, PAJAK BERDASARKAN KODE MOBIL*/
char* jen(float n)
{
if(n==1)
{
return "Minibus";
}
else if (n==2)
{
return "Sedan";
}
else if (n==3)
{
return "CUV";
}
}
float har(float n)
{
if(n==1)
{
return 200000;
}
else if (n==2)
{
return 300000;
}
else if (n==3)
{
return 400000;
}
}
float paj(float n)
{
if (n==1)
{
return 20000;
}
else if (n==2)
{
return 30000;
}
else if (n==3)
{
return 40000;
}
}