Friday, October 9, 2015

Menghitung denda peminjaman

Beberapa hari yang lalu di group C#.NET Indonesia, ada seseorang yang bertanya mengenai cara menghitung denda peminjaman buku.

Jadi program akan mendapatkan input :
  • Tanggal Peminjaman buku
  • Tanggal Pengembalian buku
Output adalah Nilai Denda dengan aturan sebagai berikut :
Jika tanggal pengembalian buku lewat dari 7 hari, maka pelanggan akan dikenakan denda sebesar Rp 1.000,00 per hari.



Untuk menjawab pertanyaan di atas, kita membuat sebuah fungsi untuk menghitung denda, dengan source code di bawah ini.

Penjelasan :
  1. Denda akan terjadi jika tanggal Kembali lebih besar dari Tanggal Peminjaman + 7 hari. Maka dari itu kita menggunakan DateTime.Compare yang akan memberikan nilai di atas 0, jika tanggal Kembali lebih besar dari Tanggal Peminjaman + 7 hari.
  2. Kita dapat menghitung jumlah hari dengan mengambil TotalDays hasil pengurangan tanggal Kembali dan tanggal Peminjaman. Hasil TotalDays adalah double (tidak bulat)
  3. Math.Ceiling digunakan untuk membulatkan ke atas sehingga didapat berapa lama peminjaman dalam satuan hari
  4. Kita akan mendapatkan nilai hari keterlambatan dengan mengurangkan lama peminjaman dengan 7 hari
  5. Nilai Denda adalah nilai hari keterlembatan dikalikan dengan nilai denda per hari
Contoh Program :
 

No comments:

Post a Comment