1. APLIKASI KREDIT MOTOR
Adi Kusmana
1
, Asep Sutiono
2
dan Dadan Muhamad Ramdani
3
1
NIM : 17160006
Email : adikusma1008@bsi.ac.id
Program Strata Satu Teknik Informatika
Universitas Bina Sarana Informatika
Jl. Sekolah internasional No. 1-6 Antapani, Bandung
2
NIM : 17160090
Email : asep.sutiono196@gmail.com
Program Strata Satu Teknik Informatika
Universitas Bina Sarana Informatika
Jl. Sekolah internasional No. 1-6 Antapani, Bandung
3
NIM : 17160043
Email : ramdani@yahoo.co.id
Program Strata Satu Teknik Informatika
Universitas Bina Sarana Informatika
Jl. Sekolah internasional No. 1-6 Antapani, Bandung
Abstrak
Aplikasi kredit motor dibuat untuk membantu bagian administrasi dealer untuk melayani
pembayaran motor secara kredit dan mendaftarkan pelanggan baru yang akan membeli motor
secara kredit dengan proses transaksi dan penjualan motor berbasis komputerisasi sehingga
nantinya akan mempermudah pekerjaan pada bagian pembayaran dan pendaftaran pelanggan
baru. Aplikasi ini dibuat menggunakan bahasa pemrograman C++ dan IDE (Integrated
Development Environment) yang digunakan adalah Borland C++.
Kata kunci : algoritma, flowchart, C++ dan borland C++
1. Pendahuluan
1.1 Latar belakang.
Salah satu fungsi dari teknologi
adalah untuk mempermudah suatu
pekerjaan dan meningkatkan kualitas suatu
perusahaan terutama dealer motor. Salah
satu dari penerapan teknologi adalah
pembuatan aplikasi.
Sampai saat ini, masih ada dealer
yang mencatat transaksi pembayaran dan
pembelian motor dengan kredit secara
manual sehingga menimbulkan kesalahan
penulisan dan proses yang lama.
Dengan permasalahan tersebut,
maka diperlukan suatu aplikasi untuk
membantu mempercepat proses transaksi,
mempercepat pendaftaran pelanggan baru
dan mengurangi kesalahan penulisan.
2. Landasan Teori
2.1 Struktur Bahasa Pemrograman C++
a. Komentar.
Pada bagian ini berisi keterangan
pada program yang dibuat dan tidak akan
di eksekusi ketika program berjalan. Ada
dua cara untuk menuliskan komentar, yaitu
dengan tanda // dan tanda /*..*/. Komentar
dengan tanda // hanya berlaku satu baris
dan komenter dengan tanda /*...*/ bisa
digunakan untuk komentar yang lebih dari
satu baris.
//Contoh komentar satu baris
/*Komentar baris kesatu
Komentar baris kedua
Komentar baris ketiga
Dan komentar baris berikutnya
*/
2. b. Preprocessor directive.
Preprocessor directive ditandai
dengan simbol #. Bertugas untuk
mengarahkan prepocessor yang akan
digunakan untuk membaca file header atau
bisa dikatakan sebagai pengatur proses
kompilasi. Contoh preprocessor directive
#include, #define, #if, #else, dan lainnya.
c. Fungsi utama (main()).
Adalah fungsi yang akan
dieksekusi pertama kali pada saat program
dijalankan. Setelah fungsi utama diikuti
dengan tanda kurung kurawal { dan }. Di
dalam tanda { dan } berisi deklarasi dan
perintah-perintah yang akan dijalankan.
Contoh perintah yang digunakan untuk
menampilkan pesan “Hallo BSI!”:
d. Fungsi tambahan ini adalah fungsi yang
mendukung dan merupakan pemecahan
dari fungsi utama. Terdiri atas function dan
procedure. Function merupakan fungsi
dengan nilai balik, sedangkan procedure
adalah fungsi tanpa nilai balik. Untuk fungsi
tambahan nanti akan kita kupas lebih lebar
lagi.
Contoh fungsi tambahan:
2.2 Algoritma
2.2.1 Pengertian algoritma
Algoritma merupakan langkah-
langkah untuk menyelesaikan suatu
masalah secara terstruktur, efektif dan
efisien.
2.2.2 Ciri algoritma
Donald E. Knuth, pwnulis beberapa
buku algoritma abad XX menyatakan
bahwa ada beberapa ciri algoritma yaitu:
a) Algorimta memiliki awal dan akhir,
suatu algoritma harus berhenti
setelah mengerjakan serangkaian
tugas. Dengan kata lain, suatu
algoritma memiliki langkah yang
terbatas.
b) Setiap langkah harus didefinisikan
dengan tepat sehingga tidak
memiliki arti ganda dan tidak
membingungkan.
c) Memiliki masukan (Input) atau
kondisi awal.
d) Memiliki keluaran (output) atau
kondisi akhir.
e) Algoritma harus efektif jika diikuti
benar-benar, maka akan
menyelesaikan persoalan.
2.3 Flowchart
Program flowchart, yaitu simbol-
simbol flowchart yang digunakan untuk
menggambarkan logik dari pemrosesan
terhadap data.
Simbol Deskripsi
Terminator. Mulai
atau selesai
Proses.
Menyatakan
proses terhadap
data.
Input/Output.
Menerima input
atau output.
Seleksi. Memilih
aliran
berdasarkan
syarat.
Predefined-data.
Definisi awal dari
variabel atau
data.
Sub proses.
Lambang fungsi
atau sub
program.
Konektor atau
penghubung
aliran flowchart
pada satu
halaman.
Konektor
halaman.
Penghubung
aliran flowchart
pada halaman
yang berbeda.
main(){
cout << “Hallo BSI!”;
}
void gotoxy(int x, int y){
COORD coord;
coord.X = x;
coord.Y = y;
SetConsoleCursorPosition(GetS
tdHandle(STD_OUTPUT_HANDLE),
coord);
}
3. Menunjukan arah
instruksi
dijalankan.
Database
fungsinya untuk
menyimpan data.
Tabel 1. Simbol program flowchart dan
deskripsinya.
2.4 Fungsi Borland C++
Borland C++ adalah salah satu IDE
yang digunakan untuk menuliskan bahasa
pemrograman C++ menjadi sebuah
program. Berikut adalah fungsi dari Borland
C++:
a) Menulis naskah program
b) Mengkompilasi program
c) Melakukan pengujian program
d) Mengaitkan ojek dan library ke
program
e) Menjalankan program
3. Metode Penelitian
3.1 Pengumpulan data
Pengumpulan data merupakan
langkah yang amat penting, karena
pengumpulan data adalah prosedur yang
sistematik dan standar untuk memperoleh
data yang diperlukan.
3.2 Analisa masalah
Untuk meminimalisir kesalahan
penulisan dan mempercepat proses
transaksi, maka diperlukan aplikasi yang
membantu meminimalisir kesalahan data
dan mempercepat proses transaksi.
3.3 Rancangan Aplikasi
Adapun fitur-fitur yang digunakan
disebutkan dibawah ini.
a) Halaman login
b) Pembayaran kredit motor
c) Informasi pelanggan
d) Pengajuan Kredit
e) Pembuatan ID pelanggan
f) Penyimpanan data pelanggan
g) Keluar
3.4 Pembuatan aplikasi
Pada tahapan ini, pembuatan
aplikasi dilakukan berdasarkan algoritma
yang telah dibuat kedalam kode program
dan menguji programnya untuk memastikan
programnya berjalan dengan baik. Adapun
langkah-langkah yang ditempuh adalah:
a) Menulis naskah program
b) Mengkompilasi program
c) Menganalisa kesalahan
d) Melakukan pengujian
e) Menjalankan program
4. Hasil dan pembahasan
4.1 Perhitungan angsuran kredit.
4.1.1 Uang muka.
Uang muka adalah sejumlah uang
yang harus dibayarkan diawal. Pada
aplikasi ini, uang muka ditentukan sebesar
25% dari harga motor. Uang muka yang
harus dibayarkan ditentukan dengan rumus
berikut:
4.1.2 Pokok kredit.
Pokok kredit adalah jumlah uang
yang diberikan peminjam untuk membeli
kendaraan dan sebagai dasar untuk
menghitung angsuran. Perhitungan pokok
kredit ditentukan dengan rumus berikut:
4.1.3 Biaya bunga.
Pembelian motor secara kredit
sudah tentu dikenai sejumlah bunga. Pada
aplikasi ini, bunga yang diterapkan yaitu
1.5% flat setiap bulannya. Bunga yang
harus dibayar ditentukan dengan rumus
berikut:
4.2 Algoritma aplikasi kredit motor.
Pada saat dibuka, ada halaman
login dan harus memasukan username dan
password. Jika username dan password
yang dimasukan benar, maka akan masuk
ke halaman utama dan jika username dan
password yang dimasukan salah, maka
akan kembali ke halaman login untuk
memasukan username dan password yang
benar. Pada halaman utama terdapat tiga
menu yaitu informasi dan pembayaran,
pengajuan kredit dan keluar. Berikutnya
akan dijelaskan langkah-langkah yang
harus dilakukan dari masing-masing menu.
4.2.1 Pengajuan kredit.
Menu ini digunakan untuk
mendaftarkan pelanggan pada database
Uang muka = harga * 25%
Pokok kredit = harga – uang muka
Biaya bunga = pokok kredit * (bunga *
tahun tenor)/100
4. aplikasi. Berikut adalah langkah-langkah
untuk menyimpan data pelanggan.
a) Pilih menu kedua.
b) Masukan nama pelanggan.
c) Masukan nomor KTP pelanggan.
d) Masukan alamat tinggal pelanggan.
e) Masukan kota tempat tinggal
pelanggan.
f) Masukan nomor telepon
pelanggan.
g) Masukan kode motor yang dipilih
oleh pelanggan.
h) Masukan lama cicilan yang
diinginkan pelanggan. Jika memilih
12, maka akan dikenakan bunga
sebesar 18%. Jika yang dipilih
adalah 24, maka akan dikenakan
bunga sebesar 36%. Jika yang
dipilih adalah 36, maka akan
dikenakan bunga sebesar 56% dan
jika yang dipillih adalah bukan 12,
24 dan 36, maka akan kembali
memasukan lama cicilan.
i) Rincian data pelanggan ditampilkan
yaitu nama, nomor KTP, alamat,
kota, nomor telepon, nama motor,
harga motor, uang muka, ciicilan
per bulan, lama cicilan dan total
yang harus dibayar.
j) Setelah data ditampilkan, maka
akan ada masukan untuk
melakukan proses penyimpanan.
Jika yang dipilih adalah Y, maka
data pelanggan akan disimpan dan
kembali ke menu utama. Jika yang
dipilih adalah T, maka akan
kembali ke menu utama tanpa
menyimpan data pelanggan yang
sebelumnya telah dimasukan.
4.2.2 Informasi dan pembayaran.
Menu ini digunakan untuk melihat
secara rinci informasi pelanggan yang
sudah terdaftar dan untuk melakukan
proses pembayaran. Berikut adalah
langkah-langkah yang digunakan untuk
melihat informasi pelanggan dan
pembayaran kredit.
a) Pilih menu pertama.
b) Masukan id pelanggan.
c) Proses mencari data pelnggan.
Jika id pelanggan ditemukan, maka
akan tampil informasi dari
pelanggan tersebut dan jika id
pelanggan tidak ditemukan, maka
akan kembali ke menu utama.
d) Menampilkan informasi pelanggan
e) Selanjutnya adalah pembayaran.
Jika yang dimasukan adalah Y,
maka sisa cicilan akan berkurang
satu dan sisa pembayaran akan
berkurang sesuai biaya yang harus
dibayarkan perbulan lalu kembali
ke menu utama. Jika yang
dimasukan adalah T, maka akan
kembali ke menu utama tanpa ada
proses pembayaran.
4.2.3 Keluar.
Menu ketiga digunakan untuk
menghentikan aplikasi yang sedang
digunakan.
4.3 Flowchart aplikasi kredit motor.
START
PILIH MENU
MENU
INPUT DATA
PELANGGAN
INPUT KODE
MOTOR
PILIH
CICILAN
CICILAN Bunga = 54%
Bunga = 36%
Bunga = 18%
Cicilan perbulan
RINCIAN
PELANGGAN
DEAL?
GENERATE ID
PELANGGAN
DATA DISIMPAN
KUMPULAN
DATA
PELANGGAN
END
INPUT ID
PELANGGAN
PROSES MENCARI
TAMPIL
DATA
PELANGGAN
BAYAR?
PROSES DAN
SIMPAN
31
2
12 36
24
T
Y
Y
T
VALID
T
Y
ID
PELANGAN
Halaman
Login
VALID?
Y
T
Gambar 1. Flowchart
5. 4.4 Penjelasan blok program.
4.4.1 Halaman login
Halaman login dibuat untuk
membatasi penggunaan aplikasi ini dan
hanya orang tertentu saja yang dapat
menggunakan aplikasi ini. Untuk
menjalankan aplikasi ini, pengguna yang
berhak menggunakan aplikasi ini harus
tahu username dan password. Dibawah ini
adalah kode yang digunakan untuk validasi
pengguna.
Tipe data yang digunakan untuk
username dan password adalah string.
Untuk memproses data string diperlukan
file header cstring.h dan deklarasi
variabelnya adalah string namaVariabel.
Untuk menampung nilai yang dimasukan
pengguna seperti username disimpan pada
variabel user dan password disimpan pada
variabel pw. Proses validasi dilakukan jika
data yang dimasukan pengguna sama
dengan nilai yang ada didalam fungsi if,
maka pengguna akan masuk ke halaman
utama aplikasi ini dan jika tidak sama,
maka akan kembali ke halaman login.
4.4.2 Halaman utama dan pemilihan menu.
Pada halaman utama terdapat tiga
menu yang bisa dipilih sesuai kebutuhan.
Dibawah akan dijelaskan fungsi masing-
masing menu menggunakan tabel.
Nomor menu Nama menu Fungsi
1
Informasi
dan
pembayaran
Untuk
mengecek
data
pelanggan
dan bisa
digunakan
untuk
pembayaran
angsuran
kredit
2
Pengajuan
kredit
Untuk
mendaftarkan
pelanngan
yang
mengajukan
kredit motor
3 Keluar
Untuk keluar
dari program
yang sedang
berjalan
Tabel 2. Penjelasan menu utama.
Berikut adalah kode yang
digunakan untuk menampilkan halaman
utama.
#include <cstring.h>
#include <iostream.h>
main(){
string pw, user;
awal:
cout<<"Usernamett: "; cin >> user;
cout<<"Passwordtt: "; cin >> pw;
if(user == "admin" && pw ==
"bismillah"){
//Blok program
}else{
cout << “Login Gagal”;
goto awal;
}
}
#include <iostream.h>
main(){
int menu;
cout<<"t[1] Informasi dan
Pembayaran"<<endl;
cout<<"t[2] Pengajuan
Kredit"<<endl;
cout<<"t[3] Keluar"<<endl<<endl;
cout<<"Pilih Menu [1/2] : ";cin >>
menu;fflush(stdin);
switch(menu){
case 1:
//Blok informasi dan pembayaran
break;
case 2:
//Blok pengajuan kredit
break;
case3:
//Blok keluar
break;
}
}
6. 4.4.3 Informasi dan pembayaran.
Menu informasi dan pembayaran
digunakan untuk melihat secara detail
informasi pelanggan yang telah terdaftar
berdasarkan id dan bisa digunakan untuk
melakukan pembayaran cicilan.
Untuk mencari data pelanggan
berdasarkan id, menggunakan metode
perulangan. ID pelanggan yang dimasukan
tersimpan pada variabel menu setelah itu
melakukan proses perulangan yang akan
mencari data yang sama yaitu data yang
terdaftar di database dengan data yang
dimasukan dan tersimpan di variabel menu.
Jika ditemukan kesamaan, maka
perulangan akan dihentikan dan nilai dari
perulangan tersebut menjadi nomor indeks
untuk mengakses data pada array dan data
pelanggan ditampilkan berdasarkan nomor
indeks. Untuk proses pembayaran akan
ada pengurangan terhadap lama cicilan
dan total yang harus dibayarkan.
4.4.4 Pengajuan kredit
Pada menu ini, pelanggan telah
berhasil mengajukan kredit akan di
daftarkan pada menu ini dan di simpan di
database serta tipe motor yang diajukan
pelanggan bisa dipilih. Berikut adalah data
motor yang tersedia:
Gambar 2. Daftar tipe dan harga motor.
Berikut adalah kode yang
digunakan untuk menangani pemasukan
dari menu kedua.
#include <iostream.h>
main(){
int menu;
cout<<"Masukan nomor ID
Pelanggan: "; cin>>menu;
for(a=0;a<50;a++){
if(ID[a] == menu){
cout << "Nomor ID Pelanggant: " <<
ID[a] << endl;
cout << "Nama Pelanggantt: " <<
strupr(nama[a])<< endl;
cout << "Merek Motortt: " <<
merek[a] << endl;
cout << "Tipe Motortt: " <<
tipeMotor[a] << endl;
//dan lain sebagainya
cout << "nApakah ingin melakukan
pembayaran? [Y/T]: ";cin >> pilihan;
switch(toupper(pilihan)){
case 'Y':
total[a] -= perBulan[a];
lamaCicilan[a] -=1;
break;
}
}
}
}
7. Kode diatas digunakan untuk
menyimpan data yang dimasukan oleh
pengguna pada masing-masing variabel,
menentukan merek motor, tipe motor ,
harga motor berdasarkan kode motor yang
dipilih dan pemilihan lama kredit yang terdiri
dari 12 bulan, 24 bulan dan 36 bulan
beserta rincian yang harus dibayarkan
setiap bulannya.
4.4.5 Penyimpanan data pelanggan
Setelah pengisian data selesai
pada saat pengajuan kredit, maka data
tersebut disimpan pada masing-masing
variabel array dengan nomor indeks yang
sama. Berikut adalah kode program yang
digunakan untuk menyimpan data.
Pada kode program diatas nomor
array atau elemen array ditentukan oleh
variabel indeks berfungsi untuk menyimpan
data yang sesuai artinya nama, alamat,
merek motor, lama cicilan, dan lain
sebagainya yang tertulis diatas memiliki
nomor array yang sama yang berguna pada
saat pemanggilan data menjadi lebih
mudah dan efisien. Nilai indeks akan
bertambah satu setelah data pelanggan
tersimpan.
4.5 Hasil pengujian aplikasi kredit motor.
4.5.1 Halaman login.
Berikut ini adalah gambar dari
tampilan halaman login.
Gambar 3. Tampilan halaman login
#include <iostream.h>
main(){
char innama[25],innoKTP[30],
inalamat[50], inkota[30], innoHP[15];
int menu;
cout<<"tNama Pelanggant: ";
gets(innama);
cout<<"tNo. KTPtt: "; cin >>
innoKTP;fflush(stdin);
cout<<"tAlamattt: "; gets(inalamat);
cout<<"tKotatt: "; gets(inkota);
cout<<"tNo. Telepont: ";
scanf("%s", &innoHp); fflush(stdin);
cout << "Masukan kode motor : ";
cin >> a;
switch(a){
case n:
//Data motor
break;
}
cout << "Pilih lama kredit yang di
inginkan :" ;cin >> menu;
switch(menu){
case 12:
//blok program
break;
case 24:
//blok program
break;
case 36:
//blok program
break;
}
}
inID +=1;
strcpy(nama[indeks], innama);
strcpy(noKTP[indeks], innoKTP);
strcpy(alamat[indeks], inalamat);
strcpy(merek[indeks], inmerek);
strcpy(kota[indeks], inkota);
strcpy(noHp[indeks], innoHp);
strcpy(tipeMotor[indeks],
intipeMotor);
ID[indeks] = inID;
harga[indeks] = inharga;
uangMuka[indeks] = inuangMuka;
perBulan[indeks] = inperBulan;
lamaCicilan[indeks] = inlamaCicilan;
total[indeks] = intotal;
indeks++;
8. Berikut adalah tampilan jika pengguna
berhasil memasukan username dan
password dengan benar.
Gambar 4. Tampilan jika login berhasil.
4.5.2 Menu utama.
Berikut ini adalah tampilan menu
utama.
Gambar 5. Menu utama.
4.5.3 Tampilan dari menu kedua.
Pada menu kedua, proses
pendaftaran pelanggan dilakukan.
Gambar 6. Proses pengisian data
pelanggan.
Gambar 7. Pemilihan kode motor.
Gambar 8. Pemilihan lama cicilan.
Gambar 9. Rincian data pelanggan.
Gambar 10. Proses penyimpanan data ke
database.
Gambar 11. Pemberian ID pelanggan.
9. 4.5.4 Informasi dan pembayaran.
Pada menu pertama, proses
pembayaran dilakukan.
Gambar 12. Memasukan ID pelanggan.
Gambar 13. Proses pencarian data
pelanggan.
Gambar 14. Tampilan jika pencarian
berhasil ditemukan.
Gambar 15. Informasi pelanggan dan
pembayaran.
Gambar 16. Proses pembayaran.
5. Kesimpulan dan saran
Kesimpulan yang dapat diambil dari proses
pembuatan aplikasi kredit motor adalah
sebagai berikut:
1. Untuk menyimpan data bisa
menggunakan array.
2. Untuk mencari data pada array bisa
menggunakan metode
pengulangan.
3. Untuk mengubah huruf kecil
menjadi huruf besar, bisa
menggunakan fungsi toupper().
4. Untuk menghentikan program, bisa
menggunakan fungsi exit().
Dalam aplikasi kredit motor masih terdapat
beberapa kekurangan yaitu data yang
disimpan akan hilang jika program di tutup.
Saran bagi yang akan mengembangkan
aplikasi ini adalah menambahkan database
supaya data yang disimpan masih tetap
ada walaupun program ditutup.
Daftar Pustaka
[1] Belajar C++. 2016. Pengertian c++
dan borland c++.
http://www.belajarcpp.com/2016/01/pe
ngertian-cplusplus-dan-borland-
cplusplus.html
[2] Fasesa. 2013. Struktur bahasa
pemrograman c++.
http://fasesanotes.blogspot.co.id/2013/
03/struktur-bahasa-pemrograman-
c.html