Minggu, 27 November 2011

Membulatkan Bilangan Desimal Ke Kelipatan Setengah Berikutnya


Ternyata mengenai bulat-membulatkan bilangan semakin sering ditanya. Setelah dua artikel saya sebelumnya yang membahas pembulatan bilangan pecahan ke kelipatan bilangan bulat di atasnya, serta pembulatan suatu bilangan ke dalam angka kelipatan seratus berikutnya, ada juga yang bertanya kepada saya: Bagaimana dengan pembulatan bilangan desimal ke dalam kelipatan setengah berikutnya? Contoh: Angka 0,1 (Nol koma satu) dibulatkan menjadi 0,5 (Nol koma lima), angka 1,6 (Satu koma enam) dibulatkan menjadi 2, angka 1 tetap menjadi 1, dan seterusnya. Simak solusi selengkapnya di artikel ini.

Deskripsi:
Membulatkan setiap angka pecahan ke atas setengah
berikutnya. Contoh: Angka 6,1 (Enam koma satu)
akan dibulatkan menjadi 6,5.


Persiapan:
1. Buat satu project standard exe dengan satu form
2. Tambahkan satu CommandButton ke atas form
3. Copy-kan code ini ke editor form yang bertalian


Kode::

'Copy Code Dibawah ini Pada Kolom Form Code Editor Dengan Deskripsi General
Private Sub Command1_Click()
MsgBox BulatkanKeAtasSetengah(1.6) '<-- menghasilkan 2 MsgBox BulatkanKeAtasSetengah(1.5) '<-- menghasilkan 1.5 MsgBox BulatkanKeAtasSetengah(1.1) '<-- menghasilkan 1.5 MsgBox BulatkanKeAtasSetengah(1) '<-- menghasilkan 1 End Sub Private Function BulatkanKeAtasSetengah(ParamAngka As Double) As Double Dim Desimal As Double Dim BulatAngka As Integer BulatAngka = Val(ParamAngka) Desimal = ParamAngka - BulatAngka If Desimal = 0.5 Then BulatkanKeAtasSetengah = ParamAngka Else If Desimal <> 0 Then
BulatkanKeAtasSetengah = BulatAngka + 0.5
ElseIf Desimal > 0.5 Then
BulatkanKeAtasSetengah = (ParamAngka - (Desimal - 0.5)) + 0.5
Else
BulatkanKeAtasSetengah = ParamAngka
End If
End If
End Function

0 komentar:

Posting Komentar