Jumat, 17 Desember 2010

Konversi Angka ke kata dalam Bahasa Inggris


import javax.swing.JOptionPane;

public class konversi_bilangan{
public String konversi (int angka){
String [] bilangan ={"zero","one","two","three","four","five","six","seven","eight","nine"};
String temp=" ";
if (angka == 0) {
            return bilangan [0].toUpperCase();
        }
if (angka<12){
temp = " " + bilangan[angka];
}
else if(angka<20){
temp = bilangan[(int)angka-10] + " teen ";
}
else if(angka<100){
temp = bilangan [(int)angka/10] + " ty " + konversi(angka%10);
}
else if(angka<200){
temp = "one hundred and " + konversi(angka-100);
}
else if (angka==100|angka==200|angka==300|angka==400|angka==500|angka==600|angka==700|angka==800|angka==900){
temp = konversi(angka/100) +  " hundred ";
}
else if(angka<1000){
temp = konversi(angka/100) + " hundred and " + konversi(angka%100);
}
  temp = temp.replaceAll("one ty", "ten");
        temp = temp.replaceAll("two ty", "twenty");
        temp = temp.replaceAll("three ty", "thirty");
        temp = temp.replaceAll("four ty", "forty");
        temp = temp.replaceAll("five ty", "fifty");
        temp = temp.replaceAll("six ty", "sixty");
        temp = temp.replaceAll("seven ty", "seventy");
        temp = temp.replaceAll("eight ty", "eighty");
        temp = temp.replaceAll("nine ty", "ninety");
        temp = temp.replaceAll("one teen", "eleven");
        temp = temp.replaceAll("two teen", "twelve");
        temp = temp.replaceAll("three teen", "thirteen");
        temp = temp.replaceAll("four teen", "fourteen");
        temp = temp.replaceAll("five teen", "fifteen");
        temp = temp.replaceAll("six teen", "sixteen");
        temp = temp.replaceAll("seven teen", "seventeen");
        temp = temp.replaceAll("eight teen", "eighteen");
        temp = temp.replaceAll("nine teen", "nineteen");
        return temp.trim().toUpperCase();
}
public static void main (String args[]){
do{
try {
konversi_bilangan num = new konversi_bilangan();
int konvert = Integer.parseInt(JOptionPane.showInputDialog("Masukkan Angka"));

if (konvert < 0 || konvert >999) {
JOptionPane.showMessageDialog(null,"Angka Hanya 0 s.d. 999 !!!","WARNING",JOptionPane.ERROR_MESSAGE);
}
else {
JOptionPane.showMessageDialog(null,"Hasil Konversi \n " + konvert + " = " + num.konversi(konvert),"RESULT",JOptionPane.INFORMATION_MESSAGE);
}
}
catch(Exception e){
JOptionPane.showMessageDialog(null,"ERROR","WARNING",JOptionPane.ERROR_MESSAGE);
}
}
while(JOptionPane.showConfirmDialog(null,"Ingin Mengulang??","OPTION",JOptionPane.ERROR_MESSAGE)==JOptionPane.YES_NO_OPTION);
}
}
1

Tidak ada komentar:

Posting Komentar