Tuesday, October 20, 2009

Pembulatan Bilangan Pecahan (Round Double Data Type)


Pembuatan software tidak bisa terlepas dari operasi matematika. Baik yang sederhana maupun kompleks. Misalnya pada aplikasi jual beli, perpajakan, akuntansi maupun sistem informasi akademik mahasiswa. Java mendukung penuh operasi matematika mulai dari yang sederhana sampai dengan matematika kompleks dengan beberapa kelas pada paket java.math.
 

Sebagai contoh, misalnya untuk membulatkan bilangan pecahan dapat digunakan metode setScale() dari kelas java.math.BigDecimal.
 

Contoh implementasi:


package umar.faisol;

import java.math.BigDecimal;

public class Bulat
{
    public static String bulat(double angka, int koma)
    {
        String returnValue = "";

        try
        {
            Double angkaDouble = new Double(angka);
            BigDecimal bigDecimal = new BigDecimal(angkaDouble.toString());
            BigDecimal hasilBulat = bigDecimal.setScale(koma, BigDecimal.ROUND_HALF_UP);

            returnValue = hasilBulat.toString();
        }
        catch(ArithmeticException ae)
        {
            returnValue = ae.getMessage();
        }

        return (returnValue);
    }
}


Penggunaannya dapat dilakukan pada kelas Main:



package umar.faisol;

public class Main
{
    public static void main (String[] args)
    {
        System.out.println("3.14446 = " + Bulat.bulat(3.14446, 2));
        System.out.println("3.15556 = " + Bulat.bulat(3.15556, 2));
    }
}

Keluarannya adalah:

3.14446 = 3.14
3.15556 = 3.16

Download source code di sini.

8 comments:

umar said...

untuk tipe pembulatan lain dapat diganti property dari Bigdecimal di bagian argumen kedua dari metode setScale().

pusss said...

untuk tipe pembulatan lain dapat diganti property dari Bigdecimal di bagian argumen kedua dari metode setScale().

Terima kasih infonya, saya coba dulu..^_^

Anonymous said...

Assalamu'alaikum,
Terima kasih atas kunjungan dan komentarnya. Saya tidak tahu harus komentar apa, karena saya kurang paham.

umar said...

@jalandakwahbersama
wa'alaykumussalam, terima kasih kembali.

Potter.Web.ID said...

Hheuheu sumpah ndak ngeuh
but anyway, thanks dah mampir

Anonymous said...

belajar banyak

Anonymous said...

co szukalem, dzieki

Anonymous said...

terima kasih, tulisan anda sangat membantu saya............