Kamis, 22 Maret 2012

Program Java Operasi Pecahan

Program ini saya buat dengan menggunakan constructor dan method, dan menggunakan 2 class.
Pertama buat class dengan nama Pecahan.java, berikut listing programnya :

public class Pecahan {
private double pembilang1;
private double pembilang2;
private double penyebut1;
private double penyebut2;

public Pecahan(){
    setpembilang1(0);
    setpembilang2(0);
    setpenyebut1(0);
    setpenyebut2(0);
}
public Pecahan(double pb1,double pb2,double pn1, double pn2){
    pembilang1=pb1;
     pembilang2=pb2;
      penyebut1=pn1;
      penyebut2=pn2;
}

public void setpembilang1(double pb1){
    pembilang1=pb1;
}
public void setpembilang2(double pb2){
    pembilang2=pb2;
}
public void setpenyebut1(double pn1){
    penyebut1=pn1;
}public void setpenyebut2(double pn2){
    penyebut2=pn2;
}

public double getpembilang1(){
    return pembilang1;
}
public double getpembilang2(){
    return pembilang2;
}
public double getpenyebut1(){
    return penyebut1;
}
public double getpenyebut2(){
    return penyebut2;
}


public double getjumlahpembilang(){
    if (getpenyebut1()== getpenyebut2())
        {
       return getpembilang1()+getpembilang2();
    }
 else
    {
        return (getpenyebut2()*getpembilang1())+(getpenyebut1()*getpembilang2());
 }
}
public double getkurangpembilang(){
    if (getpenyebut1()== getpenyebut2())
        {
       return getpembilang1()-getpembilang2();
    }
 else
    {
        return (getpenyebut2()*getpembilang1())-(getpenyebut1()*getpembilang2());
 }
}
public double getkalipembilang(){
    return getpembilang1()*getpembilang2();
}
public double getbagipembilang(){
    return getpembilang1()*getpenyebut2();
}
public double getjumlahpenyebut(){
    if (getpenyebut1()== getpenyebut2())
        {
       return getpenyebut1();
    }
 else
    {
        return getpenyebut1()*getpenyebut2();
 }
}
public double getkurangpenyebut(){
    if (getpenyebut1()== getpenyebut2())
        {
       return getpenyebut1();
    }
 else
    {
        return getpenyebut1()*getpenyebut2();
 }
}
public double getkalipenyebut(){
    return getpenyebut1()*getpenyebut2();
}
public double getbagipenyebut(){
    return getpenyebut1()*getpembilang2();
}


}

Class di atas berisi semua method dan objek yang akan digunakan pada class utama.
Berikutnya buat class utama dengan nama PecahanTest.java, dimana class ini merupakan clas utama untuk menjalankan program, berikut listing programnya :

import javax.swing.JOptionPane;


/**
 *
 * @author Jonathan
 */
public class PecahanTest {
public static void main (String args[]){
    Pecahan bilangan = new Pecahan();
    double pemb1= Double.parseDouble(JOptionPane.showInputDialog("Masukan Pembilang 1 : "));
    double peny1= Double.parseDouble(JOptionPane.showInputDialog("Masukan Penyebut 1 : "));
    double pemb2= Double.parseDouble(JOptionPane.showInputDialog("Masukan Pembilang 2 : "));
    double peny2= Double.parseDouble(JOptionPane.showInputDialog("Masukan Penyebut 2 : "));
    int op=Integer.parseInt(JOptionPane.showInputDialog("Masukan Pilihan Operasi : \n"+"1. +\n"+"2. -\n"+"3. *\n"+"4. /\n"));
    bilangan.setpembilang1(pemb1);
    bilangan.setpembilang2(pemb2);
    bilangan.setpenyebut1(peny1);
    bilangan.setpenyebut2(peny2);

    switch(op){
            case 1:
            JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+pemb1+"/"+peny1+" "+")"+"+"+" "+"("+pemb2+"/"+peny2+")");
            JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+bilangan.getjumlahpembilang()+"/"+bilangan.getjumlahpenyebut());
            break;
            case 2:
            JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+pemb1+"/"+peny1+" "+")"+"-"+" "+"("+pemb2+"/"+peny2+")");
            JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+bilangan.getkurangpembilang()+"/"+bilangan.getkurangpenyebut());
            break;
            case 3:
            JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+pemb1+"/"+peny1+" "+")"+"*"+" "+"("+pemb2+"/"+peny2+")");
            JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+bilangan.getkalipembilang()+"/"+bilangan.getkalipenyebut());
            break;
            case 4:
            JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+pemb1+"/"+peny1+" "+")"+"/"+" "+"("+pemb2+"/"+peny2+")");
            JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+bilangan.getbagipembilang()+"/"+bilangan.getbagipenyebut());
            break;
        default:
             JOptionPane.showMessageDialog(null,"Pilihan Tidak Ada");
    }
}
}


Simpan kedua file tersebut dalam satu folder dan jalankan PecahanTest.java.
Jika ada pertanyaan silahkan komentar saja.