Jumat, 07 September 2012

Konverter Bilangan di JAVA

Halloo semua, kali ini aku akan posting tentang konverter bilangan. Konsep utamanya adalah mengubah bilangan desimal menjadi bilangan biner, hexa, ataupun, oktal, tergantung pada keinginan para pembaca sekalian. Konversi ini saya kombinasikan dengan pemilihan gender atau jenis kelamin. Pengen tahu codingnya langsung liat di bawah ini saja :

//yang ini adalah pendeklarasian variabel globalnya

public class  Tugas_konversi_bilangan_gender {
  static String Kelmen;
  static String Jeneng;
  static int Hasil;
   //method-method
//yang ini untuk method konversi ke hexa     
  public static void Hexa(int n){
   char[] BilHexa={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
   if(n>0){
     Hexa(n/16);
     System.out.print(BilHexa[n%16]);
    }
}

//yang ini method untuk konversi ke biner 

public static void Biner(int n){ if(n>1)
{ Biner(n/2);
    }
    System.out.print(n%2);
}
//yang ini method untuk konversi ke oktal 
public static void Oktal(int n){
    char[] daftarOktal={'0','1','2','3','4','5','6','7'};
    if(n>0){
        Oktal(n/8);
        System.out.print(daftarOktal[n%8]);
    }
}
//yang ini method untuk menginputkan bilangan desimalnya
public static void inputDes(){
    System.out.print("Masukkan bilangan desimal nya = ");
    Scanner inputan=new Scanner(System.in);
    Hasil=inputan.nextInt();
    //return bilDes;
}
//yang ini method untuk memunculkan hasil biner yang tadi sudah di proses di method konversi biner
public static void tampilBiner(){
    inputDes();
    System.out.print("Nilai Binernya adalah ");
    Biner(Hasil);
}
//yang ini method untuk memunculkan hasil hexa yang tadi sudah di proses di method konversi hexa
public static void tampilHexa(){
    inputDes();
    System.out.print("Nilai Hexanya adalah ");
    Hexa(Hasil);
}
//yang ini method untuk memunculkan hasil oktal yang tadi sudah di proses di method konversi oktal
public static void tampilOktal(){
    inputDes();
    System.out.print("Nilai Oktalnya adalah ");
    Oktal(Hasil);
}
//yang ini method untuk menampilkan penginputan bilangan desimal yang tadi sudah diproses di method InputDes
public static int inpBil(){
    System.out.println("^_^ Silahkan Mencoba ^_^"
    + "\nHallo guys, Monggo di coba "+ Jeneng + "( " + Kelmen +" )"+",");
    System.out.println("Silahkan anda memilih Konversi berikut ini "
    + "\n1. Hexa  \n2. Biner \n3. Oktal \n4. OUT"
            );
    System.out.print("Masukkan Angka yang anda pilih = ");
    Scanner inputan = new Scanner(System.in);
    int pilmenu=inputan.nextInt();
    return pilmenu;
}
//yang ini method untuk memilih hasil pengkonversian 
public static void menU(int milih){
    System.out.println("\033");
    switch(milih){
        case 1 : tampilHexa(); break;
        case 2 : tampilBiner(); break;
        case 3 : tampilOktal(); break;
        case 4 : System.out.println("Thanks for your visit ^_^:)");
        System.exit(0); break;
        default : System.out.println("(Sorry. Hanya bisa memilih angka 1-4)");
        break;
}
    System.out.println("\033");
}

//dan ini main methodnya     
public static void main(String arg[]){
    Jeneng=JOptionPane.showInputDialog("Input Your name guys : ");
        String[] choices = {"BOYS", "GIRLS", "Ndak jelas", "OUT"};
        String BOYS="Ganteng";
        String GIRLS="Cantik";
        String Ndak_jelas=" Why you dont try this guys???????^^";
        String OUT="waria";
        while (true) {
            int response = JOptionPane.showOptionDialog(
                 null                       
                 , "Jenis kelamin anda adalah ?"
                 , "Jenis Kelamin"
                 , JOptionPane.YES_NO_OPTION 
                 , JOptionPane.QUESTION_MESSAGE
                 , null                       
                 , choices     
                 , "OUT" );
        switch(response){
            case 0 : Kelmen=BOYS;
                break;
            case 1 : Kelmen=GIRLS;
                break;
            case 2 : Kelmen=OUT;
                break;
            case 3 : Kelmen=Ndak_jelas;
                break;
            default : Kelmen="";
        }
    do{
        menU(inpBil());
    }
    while(true);
        }
}
}

Tidak ada komentar:

Posting Komentar