Kalok yang ini adalah tugas java, sebenernya sih konsepnya sama seperti PHP yang aku post barusan, yaitu konversi bilangan, tapi ini dalam bahasa java sob, langsung aja deh ini coding nya, maaf ya nggak ada screenshot nya, udah ngantuk soalnya.
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
package Praktek1;
import java.util.Scanner;
/**
*
* @author Run
*/
public class Konversi {
static String name;
static String jk;
static String lp;
static int bilDes;
static int asli;
//START method konversi
public static void Biner(int n){ //function utk konv ke biner
if(n>1){
Biner(n/2);
}
System.out.print(n%2);
}
public static void tampilBiner(){ //function utk tampilkan biner
inputDes();
System.out.print("Binernya adalah :");
Biner(bilDes);
}
public static void Oktal(int n){ //function utk konv ke octal
if(n>1){
Oktal(n/8);
}
System.out.print(n%8);
}
public static void tampilOktal(){ //function utk tampilkan octal
inputDes();
System.out.print("Oktalnya adalah :");
Oktal(bilDes);
}
public static void Heksa(int n){ //function utk konv ke heksa
asli = n;
if(n>1){
Heksa(n/16);
}
if(!((n%16==0)&(n==asli))){ //jika heksa awal 0 tidak ditulis (misal 04 ditulis 4)
switch(n%16){
case 10 : System.out.print("A"); break;
case 11 : System.out.print("B"); break;
case 12 : System.out.print("C"); break;
case 13 : System.out.print("D"); break;
case 14 : System.out.print("E"); break;
case 15 : System.out.print("F"); break;
default : System.out.print(n%16);//System.out.print(
}
}
}
public static void tampilHeksa(){ //function utk tampilkan heksa
inputDes();
System.out.print("Heksanya adalah :");
Heksa(bilDes);
}
//END method konversi
//START function input menu
public static int inpMenu(){ //fungsi untuk input pemilihan menu
System.out.println("=================================="+
"\n\nSelamat datang "+jk+" "+name);
System.out.println("Silakan memilih Menu Konversi Bilangan"+
"\n1. Biner \n2. Hexa \n3. Oktal \n4. Terbilang \n5. Pecahan \n6. Exit ");
System.out.print("Masukkan angka Menu = ");
Scanner inputan = new Scanner(System.in);
int pilmenu = inputan.nextInt();
return pilmenu;
}
//END function input menu
//START method for input desimal
public static void inputDes() { //fungsi untuk input bil desimal
System.out.print("Masukkan Bilangan desimal = ");
Scanner inputan=new Scanner(System.in);
bilDes=inputan.nextInt();
}
//END method for input desimal
//START eksekusi menu
public static void menU(int pil){ //fungsi menu pemilihan
System.out.println("\033");//clear screen /saya sendiri ga' paham :D
switch(pil){
case 1: tampilBiner(); break;
case 2: tampilHeksa();break;
case 3: tampilOktal();break;
case 4: tampilTerbilang();break;
case 5: tampilPecahan();break;
case 6: System.out.println("GOOD BYE ya!!");
System.exit(0); break;
default:System.out.println("(Maaf. Pilih angka 1-6");
}
System.out.println("\033");//clear screen
}
//END eksekusi menu
//START Terbilang
static String[] angka = {"", "Satu", "Dua", "Tiga", "Empat", "Lima", "Enam", "Tujuh", "Delapan", "Sembilan", "Sepuluh", "Sebelas"};
private static String sebut(int x) {
String bilang = "";
int y = x / 100;
if (y > 0) {
bilang = angka[y] + " Ratus ";
if (y == 1) {
bilang = "Seratus ";
}
x %= 100;
}
if (x < 12) {
bilang += angka[x];
} else {
y = x / 10;
x %= 10;
if (y == 1) {
bilang += angka[x] + " Belas";
} else {
bilang += angka[y] + " Puluh " + angka[x];
}
}
return bilang;
}
private static String terbilang(long x) {
int y;
String bilang = "";
String[] satuan = {"", " Ribu ", " Juta ", " Milyar ", " Trilyun ", " Quadrilyun ", " Quintilyun "};
if (x > Math.pow(10, 20)) {
return "Bilangan terlalu besar";
}
for (int i = 6; i > 0; i--) {
y = (int) (x / Math.pow(10, i * 3));
if (y > 0) {
if (y == 1 && i == 1) {
bilang += " Seribu ";
} else {
bilang += sebut(y) + satuan[i];
}
}
x %= Math.pow(10, i * 3);
}
bilang += sebut((int) x);
return bilang;
}
public static void tampilTerbilang() {
inputDes();
System.out.print("Bacanya yaitu : "+terbilang(bilDes));
}
//END terbilang
//START PECAHAN
public static void tampilPecahan() {
inputDes();
int desimal;
desimal = bilDes;
int satu, dua, tiga, empat, lima, enam, tujuh, delapan, sembilan, sepuluh, sebelas, duabelas, tigabelas;
satu = desimal / 100000;
desimal %= 100000;
dua = desimal / 50000;
desimal %= 50000;
tiga = desimal / 20000;
desimal %= 20000;
empat = desimal / 10000;
desimal %= 10000;
lima = desimal / 5000;
desimal %= 5000;
enam = desimal / 2000;
desimal %= 2000;
tujuh = desimal / 1000;
desimal %= 1000;
delapan = desimal / 500;
desimal %= 500;
sembilan = desimal / 200;
desimal %= 200;
sepuluh = desimal / 100;
desimal %= 100;
sebelas = desimal / 50;
desimal %= 50;
duabelas = desimal / 10;
desimal %= 10;
tigabelas = desimal / 1;
desimal %= 1;
System.out.println("Jumlah seratus ribuan = " + satu
+ "\nJumlah lima puluh ribuan = " + dua
+ "\nJumlah dua puluh ribuan = " + tiga
+ "\nJumlah sepuluh ribuan = " + empat
+ "\nJumlah lima ribuan = " + lima
+ "\nJumlah dua ribuan = " + enam
+ "\nJumlah seribuan = " + tujuh
+ "\nJumlah lima ratusan = " + delapan
+ "\nJumlah dua ratusan = " + sembilan
+ "\nJumlah seratusan = " + sepuluh
+ "\nJumlah lima puluhan = " + sebelas
+ "\nJumlah lima satuan = " + duabelas
+ "\nJumlah satuan = " + tigabelas);
}
//END PECAHAN
//START method input nama
public static void inpNama(){
System.out.print("Inputkan nama anda : ");
Scanner inputNama = new Scanner(System.in);
name = inputNama.nextLine();
if(name.equals(""))
{
System.out.println("Ma'af anda belum mengisi nama, isi lagi ya :D\n");
inpNama();
}
else{
inpJK();
}
}
//END method input nama
//START method for input jenis kelamin
public static void inpJK(){
System.out.print("Masukkan jenis kelamin : \n1.Laki-laki \n2.Perempuan\n menu no : ");
Scanner inputjk = new Scanner(System.in);
String pil = inputjk.nextLine();
int pilmenu = Integer.parseInt(pil);
switch(pilmenu){
case 1 : jk = "agan" ;break;
case 2 : jk = "sist" ; break;
default :
System.out.println("Lho anda salah input ya ??? apa anda waria :P\n input lagi ya...\n");
inpJK();
}
}
//END method for input jenis kelamin
//START Main METHOD UTAMA UNTUK MENJALANKAN PROGRAM
public static void main(String FIRAYZ[]){
inpNama();
do{
//pemanggilan method/fungsi menu
menU(inpMenu());
}
while(true);
}
//END Main METHOD UTAMA UNTUK MENJALANKAN PROGRAM
}
source : http://syarifmoklet45.blogspot.com/2012/09/java-konverter-bilangan-full-scanner.html
Tidak ada komentar:
Posting Komentar