8 Sep 2012

java : menuJOption

Assalamualaikum wr.wb
sebelumnya saya akan menampilkan menu Joption dari java yang telah saya sempurnakan terlebih dahulu, langsung saja ke TKP :)

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Praktek1;

/**
 *
 * @author -
 */
import java.awt.HeadlessException;
import javax.swing.JOptionPane;
public class Menu_DariJOption {
    private static String name;
    private static String des;
    private static int validDes;
    private static String gender;
       static StringBuilder X= new StringBuilder();
       static StringBuilder Y= new StringBuilder();
       static StringBuilder Z= new StringBuilder();
    public static void pecahan(){
        int desimal;
       
       
        String str=JOptionPane.showInputDialog("Masukkan jumlah uang");
        desimal=Integer.parseInt(str);
        int j100rbu, j50rbu, j20rbu, j10rbu, j5rbu, j2rbu, j1rbu, j5rtus, j2rtus, j1rtus, j50, j10, j1;
        j100rbu=desimal/100000;
        desimal%=100000;
        j50rbu=desimal/50000;
        desimal%=50000;
        j20rbu=desimal/20000;
        desimal%=20000;
        j10rbu=desimal/10000;
        desimal%=10000;
        j5rbu=desimal/5000;
        desimal%=5000;
        j2rbu=desimal/2000;
        desimal%=2000;
        j1rbu=desimal/1000;
        desimal%=1000;
        j5rtus=desimal/500;
        desimal%=500;
        j2rtus=desimal/200;
        desimal%=200;
        j1rtus=desimal/100;
        desimal%=100;
        j50=desimal/50;
        desimal%=50;
        j10=desimal/10;
        desimal%=10;
        j1=desimal/1;
        desimal%=1;
   
   
            JOptionPane.showMessageDialog(null,"Jumlah uang seratus ribu = "+j100rbu+
            '\n'+"Jumlah uang lima puluh ribu = "+j50rbu+
            '\n'+"Jumlah uang dua puluh ribu = "+j20rbu+
            '\n'+"Jumlah uang sepuluh ribu = "+j10rbu+
            '\n'+"Jumlah uang lima ribu = "+j5rbu+
            '\n'+"Jumlah uang dua ribu = "+j2rbu+
            '\n'+"Jumlah uang seribu = "+j1rbu+
            '\n'+"Jumlah uang lima ratus = "+j5rtus+
            '\n'+"Jumlah uang dua ratus = "+j2rtus+
            '\n'+"Jumlah uang seratus = "+j1rtus+
            '\n'+"Jumlah uang lima puluh = "+j50+
            '\n'+"Jumlah uang sepuluh puluh = "+j10+
            '\n'+"Jumlah uang satu puluh = "+j1
                    );
       
}         
   
    public static void keBiner(int y){
        if(y>1){
            keBiner(y/2);
        }
        System.out.print(y%2);
        X.append(y%2);
    }
    public static void keHexa(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){
        keHexa((n-sisabagi) /16);
       
        System.out.print(daftarHexa[n%16]);
        Y.append(daftarHexa[n%16]);
    }
    }
    public static void Oktal(int n){
        char [] daftarOktal = {'1', '2', '3', '4', '5', '6', '7',};
        if(n>0){
            Oktal(n/8);
        }
        System.out.print(daftarOktal[n%8]);
        Z.append(daftarOktal[n%8]);
    }
    public static void inputDesJOption(){
    des = JOptionPane.showInputDialog("Masukkan "
            + "Bil.Desimalnya = ");
    }
   
    public String konversi (int angka){
            String [] bilangan ={"","satu","dua","tiga","empat","lima","enam","tujuh","delapan","sembilan","sepuluh","sebelas"};
String temp=" ";
if (angka<12){
temp = "" + bilangan[angka];
}
else if(angka<20){
temp = konversi(angka-10) + " belas";
}
else if(angka<100){
temp = konversi(angka/10) + " puluh" + konversi(angka%10);
}
else if(angka<200){
temp = "seratus" + konversi(angka-100);
}
else if(angka<1000){
temp = konversi(angka/100) + "ratus" + konversi(angka%100);
}
else if(angka<2000){
temp = "seribu"+ konversi(angka-1000);
}
else if(angka<1000000){
temp = konversi(angka/1000) + " ribu" + konversi (angka%1000);
}
return temp;
}
    /**
     * @param args the command line arguments
     */
    public static void bacabil() {
       
try {
praktek1.terbilang num = new praktek1.terbilang();
int konvert = Integer.parseInt(JOptionPane.showInputDialog("Masukkan Nilai"));

if (konvert < 0 || konvert >999999) {
JOptionPane.showMessageDialog(null,"Angka di luar range!!!","WARNING",JOptionPane.ERROR_MESSAGE);
}
else {
JOptionPane.showMessageDialog(null,"Hasil = \n " + konvert + " = " + num.konversi(konvert),"RESULT",JOptionPane.INFORMATION_MESSAGE);
}
}
catch(      HeadlessException | NumberFormatException e){
JOptionPane.showMessageDialog(null,"ERROR","WARNING",JOptionPane.ERROR_MESSAGE);
}
}


    public static void eksepsiInpBiner(){
        inputDesJOption();
        try {
            if(des.isEmpty()){
                JOptionPane.showMessageDialog(null,
                        " Janagn Dikosong' !!");
                eksepsiInpBiner();
            }
            validDes=Integer.parseInt(des);
            System.out.printf("\nDesimal dari "+des+
                    ", Binernya adalah = ");
            keBiner(validDes);
            System.out.println();
            JOptionPane.showMessageDialog(null, "JADI HASIL BINER " + X);
            X.delete(0, validDes);
           
        }catch(NumberFormatException err){
            JOptionPane.showMessageDialog(null, des
                    +" bukan angka!! "
                    + "\nMasukkan angka saja!!");
            eksepsiInpBiner();
            }catch(NullPointerException npe){
            JOptionPane.showMessageDialog(null, "Tolong inputkan angka lebih dulu");
            eksepsiInpBiner();
        }
    }
    public static void eksepsiInpHexa(){
        inputDesJOption();
        try {
            if(des.isEmpty()){
                JOptionPane.showMessageDialog(null,
                        " Janagn Dikosong' !!");
                eksepsiInpHexa();
            }
            validDes=Integer.parseInt(des);
            System.out.printf("\nDesimal dari "+des+
                    ", Hexanya adalah = ");
            keHexa(validDes);
            System.out.println();
            JOptionPane.showMessageDialog(null, "JADI HASIL HEXA " + Y);
            Y.delete(0, validDes);
           
           
        }catch(NumberFormatException err){
            JOptionPane.showMessageDialog(null, des
                    +" bukan angka!! "
                    + "\nMasukkan angka saja!!");
            eksepsiInpHexa();
            }catch(NullPointerException npe){
            JOptionPane.showMessageDialog(null, " Tolong inputkan angka lebih dulu");
            eksepsiInpHexa();
        }
        }
    public static void eksepsiInpOktal(){
        inputDesJOption();
        try {
            if(des.isEmpty()){
                JOptionPane.showMessageDialog(null,
                        " Janagan Dikosong' !!");
                eksepsiInpOktal();
            }
            validDes=Integer.parseInt(des);
            System.out.printf("\nDesimal dari "+des+
                    ", Oktalnya adalah = ");
            Oktal(validDes);
            System.out.println();
           
            JOptionPane.showMessageDialog(null, "JADI HASIL OKTAL " + Z);
            Z.delete(0, validDes);
        }catch(NumberFormatException err){
            JOptionPane.showMessageDialog(null, des
                    +" bukan angka!! "
                    + "\nMasukkan angka saja!!");
            eksepsiInpOktal();
        }catch(NullPointerException npe){
            JOptionPane.showMessageDialog(null, "Tolong inputkan angka lebih dulu");
            eksepsiInpOktal();
        }
    }
    public static void outHasilBiner(){
        eksepsiInpBiner();
    }
    public static void outHasilHexa(){
    eksepsiInpHexa();
    }
    public static void outHasilOktal(){
     eksepsiInpOktal();  
    }
public static void inpNama(){
    name=JOptionPane.showInputDialog("masukan "
            + "Nama Anda :");
    try{
        if(name.isEmpty()){
            JOptionPane.showMessageDialog(null,
                    "Nama tidak boleh kosong !!");
            inpNama();//kembali input nama
        }
        }catch(NullPointerException npe){
            JOptionPane.showMessageDialog(null,
                    "Harap Diisi Nama dulu donk !!");
            inpNama();//kembali input nama
        }
    }
public static void gender() {
        gender = JOptionPane.showInputDialog("Jenis Kelamin Anda ? "
                + "(L / P)");
        if ("L".equals(gender)) {
            JOptionPane.showMessageDialog(null, "Selamat Datang brow "
                    + name
                    + "\nSilahkan Memilih Menu Konversi :)");
        } else {
            if ("P".equals(gender)) {
                JOptionPane.showMessageDialog(null, "Selamat Datang Sist "
                        + name
                        + "\nSilahkan Memilih Menu Konversi :)");
            } try{
    if(gender.isEmpty()){
        JOptionPane.showMessageDialog(null,
                "Jenis Kelamin Harus Diisi  !!");
             gender();//membeli input nama
    }

    }catch(NullPointerException ade){
        JOptionPane.showMessageDialog(null,
               "Mohon diisi Form Jenis Kelamin !!");
        gender();
            }
        }
    }

public static void menuJOption(){
//...Text untuk tombol.
    inpNama();
    gender();
    String[] pilihan = {"BINER" , "HEXA" , "OKTAL" ,"TERBILANG" ,"PECAHAN","<<KEMBALI>>" ,
        "<< KELUAR >>"};
    //"Infinite" loop, selesai jika system.exit(0)
    while (true){
        int respone = JOptionPane.showOptionDialog(
                null    // Tengah Window.
                , "Met datang agan/aganwati "+name+" !!"
        + "\npilih Konversi Bilangan dibawah ini?//" // Pesan
            ,"Konversikan Bilangan" // Judul Bar
        ,JOptionPane.YES_NO_OPTION // tipe pilihan
        ,JOptionPane.PLAIN_MESSAGE // tipe pesan
        ,null                      // Icon (none)
        ,pilihan                   // tombol text.
        ,null   // label tombol default
        );
        //menggunakan switch untuk mengecek tombol yang ditekan.
        switch (respone){
            case 0:
                outHasilBiner();
                break;
            case 1:
               outHasilHexa() ;
                break;
            case 2:
                outHasilOktal();
                break;
            case 3:bacabil();
                    break;
            case 4:pecahan();break;
            case 5:inpNama();
                    gender();
                    break;
            case 6:System.exit(0);break;
            case -1:
                //...antara tomnol (3) dan close box (-1) ditangani disini.
                System.exit(0); //keluar looping
            default:
                //...jika kita disini ada kesalahan
                JOptionPane.showMessageDialog(null,
                        "response salah "+ respone);break;
        }
    }
  }
public static void main(String[] args){
    menuJOption();}
}

setelah membuat JOption  kemudian kita melangkah ke menu terbilang dan pecahan , sebelumnya buat file new kemudian buawat terbilang , ini codingnya ...

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package praktek1;
import java.awt.HeadlessException;
import javax.swing.JOptionPane;
/**
 *
 * @author DRAGONMASTER
 */
public class terbilang  {
public String konversi (int angka){
            String [] bilangan ={"","satu","dua","tiga","empat","lima","enam","tujuh","delapan","sembilan","sepuluh","sebelas"};
String temp=" ";
if (angka<12){
temp = "" + bilangan[angka];
}
else if(angka<20){
temp = konversi(angka-10) + " belas";
}
else if(angka<100){
temp = konversi(angka/10) + " puluh" + konversi(angka%10);
}
else if(angka<200){
temp = "seratus" + konversi(angka-100);
}
else if(angka<1000){
temp = konversi(angka/100) + "ratus" + konversi(angka%100);
}
else if(angka<2000){
temp = "seribu"+ konversi(angka-1000);
}
else if(angka<1000000){
temp = konversi(angka/1000) + " ribu" + konversi (angka%1000);
}
return temp;
}
    /**
     * @param args the command line arguments
     */
    public static void bacabil() {
        do{
try {
terbilang num = new terbilang();
int konvert = Integer.parseInt(JOptionPane.showInputDialog("Masukkan Nilai"));

if (konvert < 0 || konvert >999999) {
JOptionPane.showMessageDialog(null,"Angka di luar range!!!","WARNING",JOptionPane.ERROR_MESSAGE);
}
else {
JOptionPane.showMessageDialog(null,"Hasil = \n " + konvert + " = " + num.konversi(konvert),"RESULT",JOptionPane.INFORMATION_MESSAGE);
}
}
catch(      HeadlessException | NumberFormatException e){
JOptionPane.showMessageDialog(null,"ERROR","WARNING",JOptionPane.ERROR_MESSAGE);
}
}
while(JOptionPane.showConfirmDialog(null,"Ingin Mengulang??","OPTION",JOptionPane.ERROR_MESSAGE)==JOptionPane.YES_NO_OPTION);
}
}// TODO code application logic here
   
setelah proses menu terbilang kemudian proses pecahan
ini coding scripcnya ....

import java.util.Scanner; 
 
public class pecahan 

public static void main (String args[]) 

  long bil1, uang; 
 
  do 
  { 
    //inputan dari keyboard 
    System.out.print("Jumlah uang = "); 
    Scanner obj = new Scanner(System.in); 
    uang = obj.nextLong(); 
    
    if (uang<50) 
    {  
       System.out.println("Maaf, tidak ada nominal uang "+ 
                          "sebesar "+uang+" rupiah"); 
       continue; 
    } 
    else 
    { 
       // besar 100000 
       if (uang >= 100000) 
       { 
           bil1 = uang / 100000; 
           System.out.println("Pecahan 100000 sebanyak "+bil1); 
       } 
 
       // antara 50000-100000 
       uang = uang % 100000; 
       if ((uang >= 50000) && (uang <100000)) 
       { 
           bil1 = uang / 50000; 
           System.out.println("Pecahan  50000 sebanyak "+bil1); 
       } 
   
       // antara 20000-50000 
       uang = uang % 50000; 
       if ((uang >= 20000) && (uang <50000)) 
       { 
           bil1 = uang / 20000; 
           System.out.println("Pecahan  20000 sebanyak "+bil1); 
       } 
 
       // antara 10000-20000 
       uang = uang % 20000; 
       if ((uang >= 10000) && (uang <20000)) 
       { 
           bil1 = uang / 10000; 
           System.out.println("Pecahan  10000 sebanyak "+bil1); 
       } 
 
       // antara 5000-10000 
       uang = uang % 10000; 
       if ((uang >= 5000) && (uang <10000)) 
       { 
           bil1 = uang / 5000; 
           System.out.println("Pecahan   5000 sebanyak "+bil1); 
       } 
 
       // antara 2000-5000 
       uang = uang % 5000; 
       if ((uang >= 2000) && (uang <5000)) 
       { 
           bil1 = uang / 2000; 
           System.out.println("Pecahan   2000 sebanyak "+bil1); 
       } 
 
       // antara 1000-2000 
       uang = uang % 2000; 
       if ((uang >= 1000) && (uang <2000)) 
       { 
           bil1 = uang / 1000; 
           System.out.println("Pecahan   1000 sebanyak "+bil1); 
       } 
 
       // antara 500-1000 
       uang = uang % 1000; 
       if ((uang >= 500) && (uang <1000)) 
       { 
           bil1 = uang / 500; 
           System.out.println("Pecahan    500 sebanyak "+bil1); 
       } 
 
       // antara 200-500 
       uang = uang % 500; 
       if ((uang >= 200) && (uang <500)) 
       { 
          bil1 = uang / 200; 
          System.out.println ("Pecahan    200 sebanyak "+bil1); 
       } 
 
       // antara 100-200 
       uang = uang % 200; 
       if ((uang >= 100) && (uang <200)) 
       { 
          bil1 = uang / 100; 
          System.out.println ("Pecahan    100 sebanyak "+bil1); 
       } 
 
       // antara 50-100 
       uang = uang % 100; 
       if ((uang >= 50) && (uang <100)) 
       { 
          bil1 = uang / 50; 
          System.out.println ("Pecahan     50 sebanyak "+bil1); 
       } 
   
       // kurang 50 
       uang = uang % 50; 
       if ((uang > 0) && (uang <50)) 
       { 
          bil1 = uang ; 
          //satuan 
          if (bil1<10) 
         System.out.println ("Pecahan      "+bil1+ 
                                 " ikhlaskan saja"); 
      else if (bil1>=10)//puluhan 
         System.out.println ("Pecahan     "+bil1+ 
                                 " ikhlaskan saja"); 
       } 
     } 
   }while(uang!=0); 
 
 } 


untuk hasilnya dapat dilihat dibawah sini :)

-disini adalah tampilan awalnya ~>
-tampilan masuk kejendela jenis kelamin ~>

 -setelah itu akan keluar textbox seperti ini ~>
 -kemudaian menuju tampial menu yang ada menu pilhan dari menu JOption tadi ~>
 -disini saya mengambil contoh dari menu hexa dan ini adalah tampilan setelah memasukan bil ~>

 -kemudian kita masuk ke tampilan dari menu terbilang ~>
 -ini hasil dari menu terbilang ~>
 -yang terahir adalh menu pecahan dan ini hasil dari nilai 69000

5 Sep 2012

Java : konversi Bilangan

package Praktek1;

import java.util.Scanner;
import javax.swing.JOptionPane;

public class konversi_bilangan {
    static String name;
    static int bilDes;
    static int asli;
    public static void Biner(int n){
        if(n>1){
            Biner(n/2);
        }
        System.out.print(n%2);
    }
    public static void tampilBiner(){
        inputDes();
        System.out.print("Binernya adalah :");
                Biner(bilDes);
    }
    public static void Oktal(int n){
        if(n>1){
            Oktal(n/8);
        }
        System.out.print(n%8);
    }
    public static void tampilOktal(){
        inputDes();
        System.out.print("Oktalnya adalah :");
                Oktal(bilDes);
    }
  
    public static void Heksa(int n){
        asli = n;
        if(n>1){
            Heksa(n/16);
        }
        if(!((n%16==0)&(n==asli))){
        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);
        }
        }
    }
    public static void tampilHeksa(){
        inputDes();
        System.out.print("Heksanya adalah :");
                Heksa(bilDes);
    }
    public static int inpBil(){
        System.out.println("=================================="+
                "\n\nSelamat datang "+name);
        System.out.println("Silakan memilih Menu Konversi Bilanagn"+
                "\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 inputDes() {
        System.out.print("Masukkan Bilangan desimal = ");
        Scanner inputan=new Scanner(System.in);
        bilDes=inputan.nextInt();
       
    }
    public static void menU(int pil){
        System.out.println("\033");
        switch(pil){
            case 1: tampilBiner(); break;
            case 2: tampilHeksa();break;
            case 3: tampilOktal();break;
            case 4: System.out.println("BUBYE!!");
                System.exit(0); break;
            default:System.out.println("(Maaf. Pilih angka 1-4");
        }
        System.out.println("\033");
    }
    public static void main(String arg[]){
        name = JOptionPane.showInputDialog("Masukkan Nama Anda ");
        do{
            menU(inpBil());
        }
        while(true);
    }
}

Hasilnya OM :




Koverter Bilangan Desimal dengan Menu Pilihan

 Langkah Perdana buwatlah file validator !
caranya : Klik kanan ~> New File ~> PHP web page
kalo belum tau codingnya boleh copas :D
if(isset($_POST['submit'])){//isset : penekanan form
$nama=$_REQUEST['nama'];
    if(isset($_POST['gender'])){
        $gender=$_REQUEST['gender'];
    }
    else{
        $gender='';
    }
$cek='';
}
else{
    $nama='';
    $gender='';
    $cek='Sebelum datang, monggo login dulu :D';
}
?>

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Log in</title>
                <style type="text/css">
            body{
                background-image: url(soekarno.jpg);
            }
            .a{
                font-family:Times New Roman;
                color:#000000
            }
            .b{
             
                font-family:Times New Roman;
                font-weight:bold;
             
            }
            form input.highlight{
                background: soekarno.jpg;
                borurder: solid 1px #CCCCCC;
                border-radius:5px;
                padding: 10px;
            }
            form input.highlight:focus {
                border: solid 1px #D9AD00;
                background: whitetext;
                border-radius:5px;
                box-shadow:2px 2px 5px yellow;
            }
        </style>
        <h1 class='a'>
<?php echo $cek ?></h1>
<br>
        <form action="Koverter_Bilangan_Desimal_dengan_Menu_Pilihan.php" method="post" name="form1">
            <p>
<h3 class='b'>
Nama : <input class='highlight' placeholder="Nama" required="required" type="text" name="nama" size ="30" value="<?php echo $nama ?>"/></h3>
</p>
<p>
<h3 class='b'>
Jenis Kelamin : <br>
                <input type="radio" name="gender" value="L"
                               <?php ($gender=="L")? print 'checked=""' : print ''; ?>/>
                Laki-Laki<br>
                <input type="radio" name="gender" value="P"
                       <?php ($gender=="P")? print 'checked=""' : print ''; ?>/>
                Perempuan
            </h3>
</p>
<input type="submit" name="submit" value="Masuk">
        </form>

    </head>
    <body>
        <?php
        // put your code here
        ?>
    </body>
</html>

Langkah kedua buwatlah file yang berguan untuk dipanggil oleh validator !
caranya : Klik kanan ~> New File ~> PHP web page
kalo belum tau codingnya boleh copas :D

 <?php
if(isset($_POST['submit1'])){
$decimal=$_REQUEST['decimal'];
    if(isset($_POST['pilih'])){
        $pilih=$_REQUEST['pilih'];
    }
    else{
        $pilih='';
    }
}
else{
    $decimal='';
    $pilih='';
}
?>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Konversi Bilangan</title>
                <style type="text/css">
            body
            {
                background-image: url(soekarno.jpg);
            }
            a {
                width: 230px;
                font:18px Times;
                margin: 20px;
                text-align: center;
                padding: 10px;
                border-radius: 12px;
                background:whitesmoke;
                text-decoration: none;
                text-shadow: none;
            }
           
         
       
                
         
          
          
        </style>
            <h1 class='b''>
Monggo Konversikan Bilangannya </h1>
<?php
        if(isset($_POST['submit'])) {// apakah data ter-submit?
            //membuat variable untuk menyimpan data yang dikirim
            $nama=$_REQUEST['nama'];
           if(isset($_POST['gender'])){
            $gender=$_REQUEST['gender'];
           }else{
               $gender='';
          }
       // cek apaka data yang dikirim tidak kossonng

          if($nama==''||$gender==''){
              echo '<h2>Maaf data kurang lengkap</h2>';
          }else{
              if($gender=='L'){
             echo '<h2>Selamat datang OM, '.$nama.'!!</h2>';
          } else { echo '<h2>Selamat datang Tante,'.$nama.'!!</h2>';
        }
          }
          echo "<a href='".$_SERVER['PHP_SELF']."'>Reset</a>";//hasil
        }
        ?>
    <tr>
    <td align ="center">
    <?php
        if(isset ($_POST['submit'])){
            $nama=$_REQUEST['nama'];
            if(isset($_POST['gender'])){
                $gender=$_REQUEST['gender'];
            }
            else{
                $gender='';
            }
        }
        if(isset ($_POST['submit'])){
        if($nama==''|| $gender==''){// tanda || : OR
            echo"<script>
                 alert('Maaf data yang anda masukkan kurang lengkap. Silahkan isi Nama dan Jenis Kelamin');
                 document.location.href='falidator.php';
                 </script>";//menggunakan javascript
        }
        else{
                   }
        }
    ?>
    </td>
    </tr>
</table>
<tr>
    <td align ="center">
    <p>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>
"
          method="POST" name="form1">
        <h2>
 Inputkan Angka Desimal : </h2>
<input class='highlight' placeholder="Input Angka" required="required" type="text" name="decimal" size ="25" value="<?php echo $decimal ?>"/><br>
        <h2>
 Pilih Konversi yang anda ingin kan : <br><br>
        <input type="radio" name="pilih" value="B"
               <?php ($pilih=="B")? print 'checked=""' : print ''; ?>/>
        Bilangan Biner<br>
        <input type="radio" name="pilih" value="H"
               <?php ($pilih=="H")? print 'checked=""' : print ''; ?>/>
        Bilangan Hexa<br>
        <input type="radio" name="pilih" value="O"
               <?php ($pilih=="O")? print 'checked=""' : print ''; ?>/>
        Bilangan Oktal<br>
        </h2>
<input type="submit" name="submit1" value="Konversikan"><br>
    </form>

    </head>
    <body>
        <!-- Proses Konversi -->
        <?php
        if(isset($_POST['submit1'])){//isset : penekanan form
        $decimal=$_REQUEST['decimal'];
            if(isset($_POST['pilih'])){
                $pilih=$_REQUEST['pilih'];
            }
            else{
                $pilih='';
            }
        }
        else{
            $decimal='';
            $pilih='';
        }
        if(isset ($_POST['submit1'])){
        if($decimal==''|| $pilih==''){
            echo"<script>alert('woles woles, terjadi kesalahan ! Lengkapi dengan mengisi nilai Desimal dan pilih Konversi !!')</script>";//menggunakan javascript
        }
        else{
            if($pilih=='B'){
            //Konversi ke Biner
            if (isset($_POST['decimal'])) {
                $decimal = $_POST['decimal'];
                $original = $_POST['decimal'];
                $binary = '';
                if (preg_match('/[^0-9]/',$decimal)) {
                        die ("Maaf. Inputan salah...");
                }
                else {
                    while ($decimal > 0) {
                        if ($decimal%2 == 0) {
                            $binary .= 0;
                            $decimal /= 2;
                        }
                        else {
                            $binary .= 1;
                            $decimal = ($decimal/2)-0.5;
                        }
                    }
                    $result = strrev($binary);
                    echo "<br><h2>
Bilangan decimal : $original jika dijadikan Biner hasilnya adalah $result.</h2>
";
                    }
                }
                else {

                }
            }
            else{
                    if($pilih=='H'){
                    //Konversi ke Hexa
                        if(isset($_POST['decimal'])){
                        $des=$_POST['decimal'];
                        $original=$_POST['decimal'];
                        $hex='';
                        while ($des>0){
                        $hasil=$des%16;
                            switch($hasil){
                            case 0 : $hex.="0"; break;
                            case 1 : $hex.="1"; break;
                            case 2 : $hex.="2"; break;
                            case 3 : $hex.="3"; break;
                            case 4 : $hex.="4"; break;
                            case 5 : $hex.="5"; break;
                            case 6 : $hex.="6"; break;
                            case 7 : $hex.="7"; break;
                            case 8 : $hex.="8"; break;
                            case 9 : $hex.="9"; break;
                            case 10: $hex.="A"; break;
                            case 11: $hex.="B"; break;
                            case 12: $hex.="C"; break;
                            case 13: $hex.="D"; break;
                            case 14: $hex.="E"; break;
                            case 15: $hex.="F";
                            default:break;
                            }
                                if($des/16==0){
                                $sisa=($des%16);
                                $des=$sisa;
                                }
                                    else{
                                    $sisa=($des/16);
                                    $des=$sisa%16;
                                    }}
                                    $result = strrev($hex);
                                    echo "<br><h2>
Bilangan decimal : $original jika dijadikan Hexadecimal hasilnya adalah $result.</h2>
";
                        }
                    }
                    else{
                        //Konversi ke Oktal
                         if(isset($_POST['decimal'])){
                         $des=$_POST['decimal'];
                         $original=$_POST['decimal'];
                         $octal='';
                         while ($des>0){
                         $hasil=$des%8;
                         switch($hasil){
                         case 0 : $octal.="0"; break;
                         case 1 : $octal.="1"; break;
                         case 2 : $octal.="2"; break;
                         case 3 : $octal.="3"; break;
                         case 4 : $octal.="4"; break;
                         case 5 : $octal.="5"; break;
                         case 6 : $octal.="6"; break;
                         case 7 : $octal.="7";
                         default:break;
                         }
                         if($des/8>0){
                            $sisa=($des/8);
                            $des=$sisa%8;
                            }
                            else{
                            $sisa=($des%8);
                            $des=$sisa;
                            }}
                            $result = strrev($octal);
                            echo "<br><h2>
Bilangan decimal : $original jika dijadikan Oktal hasilnya adalah $result.</h2>
";
                            }
                            else{

                            }
                    }
            }
        }
        }
        echo "<br><h2>
<a href='falidator.php'>Test Lagi</a></h2>
<br><br>";
        ?>
    <!-- End proses Konversi -->
    </td>
    </tr>
</table>
    </body>
</html>

hasil nya OM :