Kali ini membahas tentang bagaimana caranya inputan berupa angka bulat positif berubah jadi kata – kata yang sama seperti ucapan kita dalam Bahasa Indonesia. Hal ini lebih sering disebut dengan Fungsi Terbilang. Namun pada source code yang saya buat hanya sampai 999999999, karena waktu itu aku pakai integer. Maaf ya,,, bisa dirubah kok, pake long atau double atau apalah yang lebih panjang bytenya.
Mulai dari Algoritmanya dulu ya. Tapi sebelum itu, entah Algoritma yang aku buat ini kurang tepat sekali, ya mohon dimaklumi dan kalo perlu comment untuk saran yang membangun ke depannya. Namanya juga belajar.
Algoritma Fungsi Terbilang
- Masukkan nilai dan diinisialkan sebagai n.
- Buat deklarasi array huruf dengan value dari { “ ” …. “ sebelas ” }.
- Cek nilai n :
- Jika kurang dari 12, maka kembalikan value dengan memanggil variabel huruf dengan indeks array n dan langsung ke langkah 3.9. Jika tidak lanjut ke langkah 3.2. Hasilnya simpan di dalam satu variabel misalnya v.
- Jika kurang dari 20, kembalikan value dengan n – 10 diimbuhi kata belas dan hasil ditambahkan ke value v dan langsung ke langkah 3.9. Jika tidak < 20, lanjut ke langkah 3.3.
- Jika kurang dari 100, untuk mendapatkan kata pertama maka ulang ke mulai langkah 3 dengan n sejumlah n / 10. Lalu langsung ke c dengan kata selanjutnya ulang langkah 3 dengan n senilai n modulus 10 dan hasil ditambahkan ke value v dan langsung ke langkah 3.9. Jika tidak kurang dari 100, lanjut ke langkah 3.4.
- Jika kurang dari 200, kata pertama diberi “seratus” kata selanjutnya ulang langkah 3 dengan n senilai n – 100 dan hasil ditambahkan ke value v dan langsung ke langkah 3.9. Jika tidak kurang dari 200, lanjut ke langkah 3.5.
- Jika < 1000 kembali ke langkah 3 dengan n senilai n / 100, dan valuenya diimbuhi kata “ratus” kemudian untuk kata selanjutnya masukkan nilai n dengan n modulus 100 dan hasil ditambahkan ke value v dan langsung ke langkah 3.9. Jika tidak < 1000 lanjut ke langkah 3.6.
- Jika < 2000 masukkan kata “seribu” dan kembali ke langkah 3 dengan n senilai n – 1000 dan hasil ditambahkan ke value v dan langsung ke langkah 3.9. Jika tidak < 2000 lanjut ke langkah 3.7.
- Jika < 1000000, kembali ke langkah 3 dengan n senilai n / 1000. Dan imbuhi hasilnya dengan kata “ribu”. Lalu untuk kata selanjutnya kembali ke langkah 3 dengan n senilai n modulus 1000 dan hasil ditambahkan ke value v dan langsung ke langkah 3.9. Jika tidak < 1000000 lanjut ke langkah 3.8.
- Jika < 1000000000, kembali ke langkah 3 dengan n senilai n / 1000000, kemudian hasilnya tambahkan kata “juta” lalu kata untuk selanjutnya n senilai n modulus 1000000 dan kembali ke langkah 3. Kemudian simpan hasil dan tambahkan ke v dan langsung ke langkah 3.9.
- Kumpulkan value v.
- Cetak nilai v.
- Selesai.
Ya … kurang lebih seperti itulah, jika ada para master yang punya algortima yang lebih efisien, mohon sarannya ya… 🙂
Setelah Algoritmanya, sekarang Flowchart untuk Fungsi Terbilang ini.
Flowchart Fungsi Terbilang
Bagi yang ingin download file visionya, bisa download di sini. Mohon saran dan kritik yang membangun ya teman – teman. Setelah Algoritma dan Flowchart sudah sekarang giliran Source Code nya.
Source Code Fungsi Terbilang ( Java )
public String kata(int number){ number = Math.abs(number); String [] angka = {"","satu","dua","tiga","empat","lima","enam","tujuh","delapan","sembilan","sepuluh","sebelas"}; String temp = ""; if(number < 12){ temp = " "+angka[number]; }else if(number < 20){ temp = kata(number - 10)+" belas"; }else if(number < 100){ temp = kata(number/10)+" puluh"+kata(number%10); }else if (number < 200) { temp = " seratus"+kata(number - 100); }else if (number < 1000) { temp = kata(number/100)+ " ratus"+ kata(number % 100); }else if (number < 2000) { temp = " seribu"+ kata(number - 1000); }else if (number < 1000000) { temp = kata(number/1000)+" ribu"+ kata(number % 1000); }else if (number < 1000000000) { temp = kata(number/1000000)+" juta"+ kata(number % 1000000); } return temp; }
Itu fungsi atau class nya, untuk implementasi silahkan panggil fungsi kata(n), dengan n adalah angka bulat positif. Bagi yang ingin download source codenya secara lengkap, silahkan download di sini.
Mantap gan …
thanks
mantap, nanti akan saya konversi ke dalam bahasa c lagi, thanks yaaa
hehehe,,, monggo
wow…
pas bgt buat tugas gw nh bro…
thx y..hehehe
izin copas…
mampir
http://ajigudboy.wordpress.com
oke oke,,, thanks ya
cara ngprasiin funsi terbilang di word gimana bos….jgn lupa mampir ke hardy737.blogspot.com.ditunggu ya!!!!
pake VBA aja,,, abis ntu buat macro dah
Wew satu alamamatar, dirimu masuk kul pagi?
lumayan membantu untuk matkul statistika….hohohoo
aku masuk malem
temennya roni berati?
ato cisco?
Roni ? Cisco ?
Siapa mereka bro ?
weleh….
iya soale banyak mahasiswa Infor, mungkin gag satu kelas….
hehehehehe….
ahaaaa,,,, bener3x …
Thanks banget nih. Izin copas.
iya silahkan … 🙂 makasih kunjungannya
Nice one! It helps me so much.
thanks…
glad to be helped 🙂
Gmana cara ngumpulin nilai value Vnya gan. Tolong bantuannya
value V ??? yg mna?
keren gan… 😀
thanks 🙂
Mantep gan.
Izin ubah ke php yak 😀
silahkan… 🙂
Pingback: Fungsi | Between two brackets
Pingback: Function Terbilang for PHP | Between two brackets
thanks gan…mantap…..sesuai sama tugas yang lagi ane kerjain nih…..
Sip gan, sikat
Informasi yang bermanfaat dalam belajr algoritma pemrograman
Terima kasih