Minggu, 09 September 2012

Konversi Bilangan Biner, Hexa, Octal (Scanner)

Halloo again! :D ada tugas baru lagi nih, beda sih sama yang dulu tapi gak beda beda amat kok. Yang kali ini    tak lagi menggunakan JOptionPane tetapi menggunakan perintah Scanner! Kayak gimana ya codingnya? Nih, cobain ya! 

package Praktikum1;
import java.util.Scanner;
/**
 *
 * @author Talitha
 */
public class konversibilscanner {
// Global Variable
static String name; //object
static String jenis_kelamin; //object
static String jk; //object
static int bilDes; // variable
// fungsi/method rekursi
public static void Biner(int n)
{
if(n>1)
{
Biner(n/2);
}
System.out.print(n%2);
}
public static void Oktal(int n)
{
char[] daftarOktal={'0','1','2','3','4','5','6','7'};
int sisaBagi = n % 8;
if(n>0)
{
Oktal((n - sisaBagi)/8);
System.out.print(daftarOktal[n%8]);
}
}
public static void Hexa(int n)
{
char[] daftarHexa={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};
int sisaBagi = n % 16;
if(n>0)
{
Hexa((n - sisaBagi)/16);
System.out.print(daftarHexa[n%16]);
}
}
public static void inputDes()
{
System.out.print("Masukkan Bilangan Desimal = ");
Scanner inputan = new Scanner(System.in);
bilDes = inputan.nextInt();
// return bilDes;
}
public static void tampilBiner()
{
inputDes();
System.out.print("Binernya Adalah ");
Biner(bilDes);
}
public static void tampilHexa()
{
inputDes();
System.out.print("Hexanya Adalah ");
Hexa(bilDes);
}
public static void tampilOktal()
{
inputDes();
System.out.print("Oktalnya Adalah ");
Oktal(bilDes);
}
public static int inpBil()
{
System.out.println("=================================="
+ "\nSelamat Datang " + jk + ", " + name + ",");
System.out.println("Silahkan memilih Menu Konversi "
+ "Bilangan ke: " +
"\n1.Biner \n2.Hexa \n3.Oktal \n4.Exit");
System.out.print("Masukkan Angka Menu = ");
Scanner inputan = new Scanner(System.in);
int pilMenu = inputan.nextInt();
return pilMenu;
}
public static void menU(int pil)
{
System.out.println("\033"); // Clear Screen
switch(pil)
{
case 1: tampilBiner(); break;
case 2: tampilHexa(); break;
case 3: tampilOktal(); break;
case 4: System.out.println("Kamsia ya, sudah mampir.");
System.exit(0); break; // Memberikan Kondisi False
default : System.out.println("(Maaf. Pilih Angka 1 - 4 Saja)"); break;
}
System.out.println("\033"); // clear screen
}
public static void input()
{
Scanner input = new Scanner(System.in);
System.out.println("Masukkan Nama Anda :");
name = input.nextLine();
if(name.equals(""))
{
nama_kosong();
input();
}
else
{
jenis_kelamin();
}
}
public static void nama_kosong()
{
Scanner nama_kosong = new Scanner(System.in);
System.out.println("Maaf, Nama Harus Diisi !!!");
}
public static void jenis_kelamin()
{
Scanner jenis = new Scanner(System.in);
System.out.println("Masukkan Jenis Kelamin = ");
System.out.println("Pilih : \n 1 Laki-Laki, \n 2 Perempuan");
int response = jenis.nextInt();

switch(response)
{
case 1 :
jk = "Bro";
break;
case 2 :
jk = "Sist";
break;
default :
Scanner waria = new Scanner(System.in);
System.out.println("Wah, Anda tak punya kelamin ya ? \n Cap cus tentuin dulu! :D");
jenis_kelamin();
break;
}
}
public static void main(String aKU[]) // Guna Static -> Tidak Perlu Pembentukan Objek
{
input();
// terus mengulang menu jika bukan angka 4
do
{
menU(inpBil()); // atau KonversiBilangan.menU(inpBil());
}
while(true);
}    
}


Mau tau hasilnya? Nih, monggo di liat!


ini tampilan awal, untuk mengisikan nama :


masukkan jenis kelamin dan akan langsung menuju ke menu konversi :


lalu inputkan bilangan yang akan di konversi:


Done! :) makasi, mampir lagi ya!

Tidak ada komentar:

Posting Komentar