Buat Class utama untuk constructor dan method yang digunakan dengan nama Kompleks.java
Berikut Listing Programnya :
/**
*
* @author Jonathan
*/
public class Kompleks {
private double real;
private double imajiner;
public Kompleks (){
setreal(0);
setimajiner(0);
}
public void setreal(double r){
real=r;
}
public void setimajiner(double i){
imajiner=i;
}
public double getreal(){
return real;
}
public double getimajiner(){
return imajiner;
}
public String HasilKom(){
return getreal()+"+"+getimajiner()+"i";
}
public void penjumlahan(Kompleks Kom1, Kompleks Kom2){
setreal(Kom1.getreal()+ Kom2.getreal());
setimajiner(Kom1.getimajiner()+ Kom2.getimajiner());
}
public void pengurangan(Kompleks Kom1, Kompleks Kom2){
setreal(Kom1.getreal()- Kom2.getreal());
setimajiner(Kom1.getimajiner()- Kom2.getimajiner());
}
public void perkalian(Kompleks Kom1, Kompleks Kom2){
setreal((Kom1.getreal()*Kom2.getreal())- (Kom1.getimajiner()*Kom1.getreal()));
setimajiner((Kom1.getimajiner()*Kom2.getreal())+ (Kom1.getreal()*Kom2.getimajiner()));
}
}
Lalu Buat class untuk Menginput dan mencetak output dengan nama KompleksTest.java
Berikut listing Programnya :
import javax.swing.JOptionPane;
/**
*
* @author Jonathan
*/
public class KompleksTest {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// TODO code application logic here
Kompleks bilangan1 = new Kompleks();
Kompleks bilangan2 = new Kompleks();
Kompleks hasil = new Kompleks();
Double real1= Double.parseDouble(JOptionPane.showInputDialog("Masukan Bilangan Real 1 : "));
Double imaj1= Double.parseDouble(JOptionPane.showInputDialog("Masukan Bilangan Imajiner 1 : "));
Double real2= Double.parseDouble(JOptionPane.showInputDialog("Masukan Bilangan Real 2 : "));
Double imaj2= Double.parseDouble(JOptionPane.showInputDialog("Masukan Bilangan Imajiner 2 : "));
int op=Integer.parseInt(JOptionPane.showInputDialog("Masukan Pilihan Operasi : \n"+"1. +\n"+"2. -\n"+"3. *\n"+"4. /\n"));
bilangan1.setreal(real1);
bilangan1.setimajiner(imaj1);
bilangan2.setreal(real2);
bilangan2.setimajiner(imaj2);
switch(op){
case 1:
hasil.penjumlahan(bilangan1, bilangan2);
JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+real1+"+"+imaj1+"i"+" "+")"+"+"+" "+"("+real2+"+"+imaj2+"i"+" "+")");
JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+hasil.HasilKom());
break;
case 2:
hasil.pengurangan(bilangan1, bilangan2);
JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+real1+"+"+imaj1+"i"+" "+")"+"-"+" "+"("+real2+"+"+imaj2+"i"+" "+")");
JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+hasil.HasilKom());
break;
case 3:
hasil.perkalian(bilangan1,bilangan2);
JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+real1+"+"+imaj1+"i"+" "+")"+"+"+" "+"("+real2+"*"+imaj2+"i"+" "+")");
JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+hasil.HasilKom());
break;
case 4:
//hasil.pembagian(bilangan1, bilangan2);
//JOptionPane.showMessageDialog(null, "Operasi yang akan dilakukan "+"("+real1+"+"+imaj1+"i"+" "+")"+"/"+" "+"("+real2+"*"+imaj2+"i"+" "+")");
//JOptionPane.showMessageDialog(null,"Hasil Operasi yang dilakukan :"+hasil.HasilKom());
JOptionPane.showMessageDialog(null,"Belum tahu konsepnya cuy ^_^");
break;
default:
JOptionPane.showMessageDialog(null,"Pilihan Tidak Ada");
}
}
}
Jika butuh penjelasan silahkan komentar saja.