Buatlah
sebuah program utama yang berisi :
- Menu, Menu berisi beberapa pilihan yang memberi kesempatan kepada pengguna untuk memilih fungsi/prosedur yang ada di soal 2 dan 3
- Pilihan pengguna terhadap menu
- Penanganan pilihan pengguna, dengan memanggil fungsi/prosedur di soal 2 dan 3
Bonus nilai
diberikan jika :
- Membuat menu yang bisa ditampilkan berulang-ulang sampai pengguna memilih keluar dari aplikasi
- Membuat file header yang berisi kumpulan fungsi dan prosedur
Ganti koding yang berbentuk . . . . . . dengan koding
yang benar dan panggil kedua fungsi ini dari program utama di soal
1
Fungsi ke-1
float HitungDiskon(float harga, int diskon)
//menghitung jumlah pembayaran setelah dikurangi
diskon
{
. . . . . . . bayar,totaldis;
totaldis = (diskon/100)*harga;
bayar = harga - totaldis;
return bayar;
Fungsi ke-2
int TampilKodepos(char kota[10])
//menampilkan kode pos sebuah kota
{
. . . . . . . kode;
if
(strcmp(kota,"Padang")==0)
{
kode=25000;
}
else if (strcmp(kota,"Bandung")==0)
{
kode=40100;
}
else if
(strcmp(kota,"Solo")==0)
{
kode=51000;
}
else if
(strcmp(kota,"Denpasar")==0)
{
kode=72000;
}
else if
(strcmp(kota,"Palu")==0)
{
kode=92300;
}
return kode;
}
Function
tampilSkorTAK(input jenjang:string) -->integer
{fungsi
mengeluarkan skor TAK berdasarkan masukan jenjang. Ketentuan ada di tabel di
bawah ini}
Jenjang
|
Skor
|
D3 reguler
kelas pagi
|
45
|
D4 reguler
kelas pagi
|
60
|
D3 reguler
kelas karyawan
|
30
|
D4 reguler
kelas karyawan
|
40
|
D4 lanjut
jenjang
|
15
|
# include <stdio.h>
# include <string.h>
# include <conio.h>
# include <stdlib.h>
float HitungDiskon(float harga,
int diskon);
int TampilKodepos(char
kota[10]);
int tampilSkorTAK(char
jenjang[30]);
int main()
{
//deklarasi
int n, diskon;
float harga;
char y = 'y';
char kota[10];
char jenjang[30];
//untuk membuat menu agar program bisa
berulang-2 sampai yang di inginkan
while (y=='y')
{
// Untuk membersihkan / menghapus
layar
system ("cls");
//menampilkan menu pilihan
printf("1. mencari
diskon");
printf("\n2. tampil kode
pos");
printf("\n3. mencari scor dari
jenjang");
//membaca menu pilihan
printf("\nmasukkan Pilihan Menu
:"); scanf("%d", &n);
//melakukan percabangan dari menu
yang telah di pilih
switch(n)
{
//memanggil fungsi jumlah hari
dan menampilkannya
case 1 :
{
printf("Masukkan
harga:"); scanf("%f", &harga);
printf("Masukkan
diskon:"); scanf("%d", &diskon);
printf("\njumlah yang
haru di bayar adalah : %.2f", HitungDiskon(harga, diskon)); break;
}
//memanggil fungsi durasi dan
menampilkannya
case 2 :
{
fflush(stdin);
printf("masukkan
nama kota :"); gets(kota);
printf("\nkode pos
dari kota ini adalah %d", TampilKodepos(kota)); break;
}
//memanggil fungsi fungsi
tampilSkorTAK dan menampilkannya
case 3 :
{
fflush(stdin);
printf("Masukkan
jenjang :"); gets(jenjang);
printf("skor dari
jengang ini adalah %d", tampilSkorTAK(jenjang));break;
}
//memberikan informasi jika menu
belum tersedia
default : printf("silahkan
pilih menu yang di sediakan!!!"); break;
}
//membersihkan bufer di memory
fflush(stdin);
//memberikan informasi untuk
melakukan pengulangan atau tidak
printf("\napakah anda ingin
mengulangi transaksi y/n?"); scanf("%c", &y);
}
getch();
return 0;
}
float HitungDiskon(float harga,
int diskon)
//menghitung jumlah pembayaran
setelah dikurangi diskon
{
//deklarasi
float bayar,totaldis;
//algoritma menghitung diskon
totaldis = harga*diskon/100 ;
//mengitung nilai yang harus di bayar
bayar = harga - totaldis;
//mengembalikan nilai dari bayar
return bayar;
}
//menghitung selisih J2 dan J1
int TampilKodepos(char
kota[10])
//menampilkan kode pos sebuah
kota
{
int kode;
//menentukan kodepos dari kota dengan
percabangan
if (strcmp(kota,"Padang")==0)
{kode=25000;}
else if
(strcmp(kota,"Bandung")==0)
{kode=40100;}
else if
(strcmp(kota,"Solo")==0)
{kode=51000;}
else if
(strcmp(kota,"Denpasar")==0)
{kode=72000;}
else if (strcmp(kota,"Palu")==0)
{kode=92300;}
//mengembalikan nilai dari kodepos
return kode;
}
//fungsi tampil skor
int tampilSkorTAK(char
jenjang[30])
{
//deklarasi
float skor;
//menentukan skor dari jenjang dengan percabangan
if(strcmp(jenjang,"D3 reguler kelas
pagi")==0) skor = 45;
else if(strcmp(jenjang,"D4 reguler
kelas pagi")==0) skor = 60;
else if(strcmp(jenjang,"D3 reguler
kelas karyawan")==0) skor = 30;
else if(strcmp(jenjang,"D4 reguler
kelas karyawan")==0) skor = 40;
else if(strcmp(jenjang,"D4 lanjut
jenjang")==0) skor = 15;
//mengembalikan nilai dari hasil konversi
return skor;
}
|
Tidak ada komentar:
Posting Komentar