Senin, 20 Mei 2013

Konversi Bilangan Biner, Hexadesimal, Oktal

Berikut source code untuk mengkonversi bilangan desimal ke biner, hexadesimal, dan oktal.

import java.util.Scanner;
class Konversi
{
    static int bilDes;
    public static void Bin(int n)
    {
        if(n>1)
        {
            Bin(n/2);
        }
        System.out.print(n%2);
    }
    public static void Hexa(int n)
    {
        char hx [] ={'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(hx[n%16]);
        }
    }
    public static void Okt(int n)
    {
        char ok [] ={'0','1','2','3','4','5','6','7'};
        if(n>0)
        {
            Okt(n/8);
            System.out.print(ok[n%8]);
        }
    }
    public static void inputDes()
    {
        Scanner input = new Scanner(System.in);
        System.out.print("Masukkan Angka : ");
        bilDes = input.nextInt();
    }
    public static void tBiner()
    {
        inputDes();
        System.out.print("Binernya adalah : ");
        Bin(bilDes);
    }
    public static void tHexa()
    {
        inputDes();
        System.out.print("Hexadesimalnya adalah : ");
        Hexa(bilDes);
    }
    public static void tOkt()
    {
        inputDes();
        System.out.print("Oktalnya adalah : ");
        Okt(bilDes);
    }
    public static void main (String args [])
    {
        Scanner in = new Scanner(System.in);
        System.out.print("Bilangan\n1. Biner\n2. Hexadesimal\n3. Oktal\nMasukkan Pilihan : ");
        int a = in.nextInt();
        switch(a)
        {
            case 1 :
            {
                tBiner();
                break;
            }
            case 2 :
            {
                tHexa();
                break;
            }
            case 3 :
            {
                tOkt();
                break;
            }
            default : System.out.println("Maaf. Pilihan Tidak Tersedia.");
        }
    }
}

Tidak ada komentar:

Posting Komentar