Sebuah perusahaan bernama PT. Rycan Rent Car yang menyediakan
jasa penyewaan mobil jenis sedan dan minibus dengan harga terjangkau.
Menyewakan mobil dengan harga per 24 jam. Apabila sewa lebih dari 8 hari, 7 hari , dan 30 hari, akan diberikan diskon.
Dan apabila lama sewa lebih dari jam sewa maka akan dikenakan baya overtime
per jam. Macam-macam mobil yang disewakan yaitu Avanza, Camry, dan Alphard. Harga sewa Avanza yaitu 350000, Camry 500000, Alphard
1000000. Apabila penyewa mengembalikan mobil lebih dari jam sewa maka
akan dikenakan biaya overtime per jam yaitu untuk Avanza 25000 per jam,
Camry 50000 per jam, Alphard 100000 per jam. Tapi rental mobil ini pun menyediakan diskon untuk penyewa dengan ketentuan lama sewa lebih dari 8 hari akan diberikan diskon 10%. Ada pula diskon untuk lama sewa 7 hari akan diberikan diskon 20% dan untuk lama sewa 30 hari akan diberikan diskon sebanyak 30%. Dari data yang diberikan diatas, maka admin dari perusahaan penyewaan mobil ini akan mengetahui total yang harus dibayarkan oleh penyewa.
Dengan program C++ sebagai berikut.
#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 hr(float n );
float ov(float n);
main()
{
int a,banyak;
char nm_adm[10];
float ttl_pdp_sw;
struct
{
char nm_pyw[15];
int kd_mbl;
int lm_sw;
}pyw[6];
struct
{
char nm_pyw[15];
int kd_mbl;
int over_time;
}dtmbl[6];
struct
{
float jmlh_byr;
float ttl_byr;
float disk;
}dtsewa[6];
/*BERSIHKAN LAYAR DI DEV C*/
system("cls");
/*INPUT DATA*/
printf("\n DATA PENYEWA MOBIL\n");
printf(" PT. RYCAN RENT CAR\n");
printf("=============================================================================\n");
printf("\nMasukkan Jumlah Data : "); scanf("%d",&banyak);
printf("Masukkan Nama Admin : "); scanf("%s",&nm_adm);
/*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]Avanza [2]Camry [3]Alphard : ");
scanf("%i", &pyw[a].kd_mbl);
printf("Lama Pinjam (hari) : ");
scanf("%i", &pyw[a].lm_sw);
printf("Over Time (jam) : ");
scanf("%i", &dtmbl[a].over_time);
}
for(a=1;a<=banyak;a++)
{
dtsewa[a].jmlh_byr=pyw[a].lm_sw * hr(pyw[a].kd_mbl);
if (pyw[a].lm_sw>7)
dtsewa[a].disk= dtsewa[a].jmlh_byr * 10 /100;
else if (pyw[a].lm_sw==7)
dtsewa[a].disk= dtsewa[a].jmlh_byr * 20 /100;
else if (pyw[a].lm_sw==30)
dtsewa[a].disk= dtsewa[a].jmlh_byr * 30 /100;
else
dtsewa[a].disk=0;
dtsewa[a].ttl_byr= dtsewa[a].jmlh_byr - dtsewa[a].disk + (ov(pyw[a].kd_mbl) * dtmbl[a].over_time);
ttl_pdp_sw= ttl_pdp_sw + dtsewa[a].ttl_byr;
}
/*BERSIHKAN LAYAR*/
system("cls");
/*OUTPUT DATA*/
gotoxy(30,1);printf("DATA PENYEWA MOBIL\n");
gotoxy(29,2);printf("PT. RYCAN RENT CAR\n");
gotoxy(1,4);printf("Nama Admin : %s\n", &nm_adm);
gotoxy(1,5);printf("----------------------------------------------------------------------------\n");
gotoxy(1,6);printf("No. Nama Kode Jenis Lama Harga Over Harga Jumlah Diskon Total\n");
gotoxy(1,7);printf(" Penyewa Mobil Mobil Pinjam Sewa Time OV 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].kd_mbl);
gotoxy(19,8+a);printf("%s",jen(pyw[a].kd_mbl));
gotoxy(27,8+a);printf("%d",pyw[a].lm_sw);
gotoxy(33,8+a);printf("%2.0f",hr(pyw[a].kd_mbl));
gotoxy(41,8+a);printf("%d",dtmbl[a].over_time);
gotoxy(46,8+a);printf("%2.0f",ov(pyw[a].kd_mbl));
gotoxy(54,8+a);printf("%2.0f",dtsewa[a].jmlh_byr);
gotoxy(63,8+a);printf("%2.0f",dtsewa[a].disk);
gotoxy(72,8+a);printf("%2.0f",dtsewa[a].ttl_byr);
}
gotoxy(1,8+a);printf("----------------------------------------------------------------------------");
gotoxy(46,9+a);printf("Total Pendapatan Sewa : ");
gotoxy(72,9+a);printf("%2.0f",ttl_pdp_sw);
getch();
}
/*MENENTUKAN JENIS MOBIL, HARGA SEWA, PAJAK BERDASARKAN KODE MOBIL*/
char* jen(float n)
{
if(n==1)
{
return "Avanza";
}
else if (n==2)
{
return "Camry";
}
else if (n==3)
{
return "Alphard";
}
}
float hr(float n)
{
if(n==1)
{
return 350000;
}
else if (n==2)
{
return 500000;
}
else if (n==3)
{
return 1000000;
}
}
float ov(float n)
{
if (n==1)
{
return 25000;
}
else if (n==2)
{
return 50000;
}
else if (n==3)
{
return 100000;
}
}
#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 hr(float n );
float ov(float n);
main()
{
int a,banyak;
char nm_adm[10];
float ttl_pdp_sw;
struct
{
char nm_pyw[15];
int kd_mbl;
int lm_sw;
}pyw[6];
struct
{
char nm_pyw[15];
int kd_mbl;
int over_time;
}dtmbl[6];
struct
{
float jmlh_byr;
float ttl_byr;
float disk;
}dtsewa[6];
/*BERSIHKAN LAYAR DI DEV C*/
system("cls");
/*INPUT DATA*/
printf("\n DATA PENYEWA MOBIL\n");
printf(" PT. RYCAN RENT CAR\n");
printf("=============================================================================\n");
printf("\nMasukkan Jumlah Data : "); scanf("%d",&banyak);
printf("Masukkan Nama Admin : "); scanf("%s",&nm_adm);
/*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]Avanza [2]Camry [3]Alphard : ");
scanf("%i", &pyw[a].kd_mbl);
printf("Lama Pinjam (hari) : ");
scanf("%i", &pyw[a].lm_sw);
printf("Over Time (jam) : ");
scanf("%i", &dtmbl[a].over_time);
}
for(a=1;a<=banyak;a++)
{
dtsewa[a].jmlh_byr=pyw[a].lm_sw * hr(pyw[a].kd_mbl);
if (pyw[a].lm_sw>7)
dtsewa[a].disk= dtsewa[a].jmlh_byr * 10 /100;
else if (pyw[a].lm_sw==7)
dtsewa[a].disk= dtsewa[a].jmlh_byr * 20 /100;
else if (pyw[a].lm_sw==30)
dtsewa[a].disk= dtsewa[a].jmlh_byr * 30 /100;
else
dtsewa[a].disk=0;
dtsewa[a].ttl_byr= dtsewa[a].jmlh_byr - dtsewa[a].disk + (ov(pyw[a].kd_mbl) * dtmbl[a].over_time);
ttl_pdp_sw= ttl_pdp_sw + dtsewa[a].ttl_byr;
}
/*BERSIHKAN LAYAR*/
system("cls");
/*OUTPUT DATA*/
gotoxy(30,1);printf("DATA PENYEWA MOBIL\n");
gotoxy(29,2);printf("PT. RYCAN RENT CAR\n");
gotoxy(1,4);printf("Nama Admin : %s\n", &nm_adm);
gotoxy(1,5);printf("----------------------------------------------------------------------------\n");
gotoxy(1,6);printf("No. Nama Kode Jenis Lama Harga Over Harga Jumlah Diskon Total\n");
gotoxy(1,7);printf(" Penyewa Mobil Mobil Pinjam Sewa Time OV 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].kd_mbl);
gotoxy(19,8+a);printf("%s",jen(pyw[a].kd_mbl));
gotoxy(27,8+a);printf("%d",pyw[a].lm_sw);
gotoxy(33,8+a);printf("%2.0f",hr(pyw[a].kd_mbl));
gotoxy(41,8+a);printf("%d",dtmbl[a].over_time);
gotoxy(46,8+a);printf("%2.0f",ov(pyw[a].kd_mbl));
gotoxy(54,8+a);printf("%2.0f",dtsewa[a].jmlh_byr);
gotoxy(63,8+a);printf("%2.0f",dtsewa[a].disk);
gotoxy(72,8+a);printf("%2.0f",dtsewa[a].ttl_byr);
}
gotoxy(1,8+a);printf("----------------------------------------------------------------------------");
gotoxy(46,9+a);printf("Total Pendapatan Sewa : ");
gotoxy(72,9+a);printf("%2.0f",ttl_pdp_sw);
getch();
}
/*MENENTUKAN JENIS MOBIL, HARGA SEWA, PAJAK BERDASARKAN KODE MOBIL*/
char* jen(float n)
{
if(n==1)
{
return "Avanza";
}
else if (n==2)
{
return "Camry";
}
else if (n==3)
{
return "Alphard";
}
}
float hr(float n)
{
if(n==1)
{
return 350000;
}
else if (n==2)
{
return 500000;
}
else if (n==3)
{
return 1000000;
}
}
float ov(float n)
{
if (n==1)
{
return 25000;
}
else if (n==2)
{
return 50000;
}
else if (n==3)
{
return 100000;
}
}
Hasilnya:
0 comments:
Post a Comment