BLANTERORBITv102

    Cara Konversi Angka ke Huruf Terbilang dengan Java

    Kamis, 15 Januari 2015
    Source code untuk lonversi angka ke huruf dengan java atau konversi angka menjadi huruf terbilang dengan program java.

    
    package PengandaiIF;
    import java.util.Scanner;
    /**
     *
     * @author #root
     */
    public class konversiAngkakeHurufTerbilang {
    static String[] huruf={"","Satu","Dua","Tiga","Empat","Lima","Enam","Tujuh","Delapan","Sembilan","Sepuluh","Sebelas"};
            public static void main(String[] args) {
              Scanner sc = new Scanner(System.in);
              System.out.print("Masukan Bilangan yang akan disebut: ");
              System.out.println(new konversiAngkakeHurufTerbilang().angkaToTerbilang(sc.nextLong()));
            }   
        public static String angkaToTerbilang(Long angka){
            if(angka < 12)
                return huruf[angka.intValue()];
            if(angka >=12 && angka <= 19)
               return huruf[angka.intValue() % 10] + " Belas";
            if(angka >= 20 && angka <= 99)
               return angkaToTerbilang(angka / 10) + " Puluh " + huruf[angka.intValue() % 10];
            if(angka >= 100 && angka <= 199)
               return "Seratus " + angkaToTerbilang(angka % 100);
            if(angka >= 200 && angka <= 999)
               return angkaToTerbilang(angka / 100) + " Ratus " + angkaToTerbilang(angka % 100);
            if(angka >= 1000 && angka <= 1999)
               return "Seribu " + angkaToTerbilang(angka % 1000);
            if(angka >= 2000 && angka <= 999999)
               return angkaToTerbilang(angka / 1000) + " Ribu " + angkaToTerbilang(angka % 1000);
            if(angka >= 1000000 && angka <= 999999999)
               return angkaToTerbilang(angka / 1000000) + " Juta " + angkaToTerbilang(angka % 1000000);
            if(angka >= 1000000000 && angka <= 999999999999L)
               return angkaToTerbilang(angka / 1000000000) + " Milyar " + angkaToTerbilang(angka % 1000000000);
            if(angka >= 1000000000000L && angka <= 999999999999999L)
               return angkaToTerbilang(angka / 1000000000000L) + " Triliun " + angkaToTerbilang(angka % 1000000000000L);
            if(angka >= 1000000000000000L && angka <= 999999999999999999L)
              return angkaToTerbilang(angka / 1000000000000000L) + " Quadrilyun " + angkaToTerbilang(angka % 1000000000000000L);
            return "";
            }
    }

    Output :
    nilaiToTerbilang

    Ada makna baik yang tersirat ketika source code tidak bisa di copy.

    Terimakasih sudah berkesempatan untuk menimba ilmu dari blog JSC, semoga ilmu yang di share dapat bermanfaat. Jika ada pertanyaan mengenai ilmu yang terkait ataupun tidak, mari kita berdiskusi di dalam kolom komentar ini.

    Keep Learning and Keep Sharing

    1. Thank you admin, ngebantu banget buat tugas aku :D

      BalasHapus
      Balasan
      1. terimakasih kembali , :shakehand , senang bisa membantu :D

        Hapus
    2. kalo dari huruf ke angka gmn y?

      BalasHapus
      Balasan
      1. udah agan coba membalikan datanya? data array di ubah ke angka dan nilai untuk menghasilkan output di ganti ke angka juga. Namaun logika if diubah dengan menentukan string inputan.

        Hapus
      2. Bisa tunjukin prosesnya gak gan? Soalnya ane ngeblank

        Hapus
    3. Kalau huruf ke angka, Syntaxnya buat if gimana ya?

      BalasHapus
      Balasan
      1. In progress ya gan.. nanti saya publish di blog. :shakehand

        Hapus
    4. Thanks min
      Nice Post :2thumbup

      BalasHapus
    5. min mau tanya, kenapa parameternya pake "Long" huruf l besar?

      BalasHapus
      Balasan
      1. "Long" yang di pakai pada program adalah tipe data gan.

        Hapus
      2. iya, bukannya tipe data long itu di tulis dengan "l" kecil? dan kalau saya ubah ke type data Int kenapa tidak bisa ya? terimakasih

        Hapus
      3. kalo tidak salah, jika kita ubah ke "Long" menjadi "long" , maka "long" menjadi identifier nantinya. Jadi Long ini tipe data primitif dengan nilai 0L seperti 10000000000000L, kalau diganti jangan pakai Int saja , lengkap gan "Integer" , trus pada bagian scanner ubah jadi nextInt. :)

        Hapus
    6. maaf gan , agar programnya bisa dijalankan gimana ya ? masi pemula nih , baru mau belajar java otodidak . mohon pencerahannya .

      BalasHapus
      Balasan
      1. agan kalau run di cmd cukup ke direktori file programnya, terus compile "javac namafile.java" terus run lagi "java namafile".

        atau bisa run via netbeans nya / ide yang digunakan.

        Hapus
    7. kalo pake matlab caranya gimana?

      BalasHapus
    8. Min saya mau tanya,
      maksud dari kata "static" di penggalan coding static String huruf....... di atas itu apa min?
      apakah harus di buat static? jika tidak static efeknya akan seperti apa nantinya min?
      maklum saya masi belajar di java jadi masi belom paham banget :D
      Postingan nya sungguh membantu min :D

      BalasHapus
    9. makasih banget udah post, lagi buntu buat mikir yg begini om....

      note:
      elementnya kalo diapus masih bisa dicopy om.

      BalasHapus
      Balasan
      1. thanks gan..

        gak papa gan. kalau agan tau caranya berarti agan sudah menguasai browser yang dipake hihi

        Hapus
    10. gan kalau angka yang diubah ke huruf nya hasil dari inputan angka operasi penambahan gimana ya?

      BalasHapus