import javax.swing.*;
class KonversiSuhu{
private float suhuAsal;
private float suhuTujuan;
public KonversiSuhu(float suhu){
this.suhuAsal=suhu;
}
public float hitungSuhu(String tujuanKonversi){
String tujuan= tujuanKonversi.toUpperCase();
float temp=0;
if(tujuan.equals("K"))
temp = keKelvin();
else if (tujuan.equals("F"))
temp = keFahrenheit();
else if (tujuan.equals("R"))
temp = keReamur();
return temp;
}
private float keKelvin(){
float kelvin;
kelvin=suhuAsal+273;
return kelvin;
}
private float keFahrenheit(){
float fahrenheit;
fahrenheit = suhuAsal*9/5+32;
return fahrenheit;
}
private float keReamur(){
float reamur;
reamur = suhuAsal*4/5;
return reamur;
}
}
class Konversi{
public static void main(String args[]){
String tujuan;
float hasil=0;
String suhuS = JOptionPane.showInputDialog("Masukkan suhu yang akan dikonversi(celcius)!");
float suhu=Float.parseFloat(suhuS);
KonversiSuhu KSI=new KonversiSuhu(suhu);
do{
tujuan = JOptionPane.showInputDialog("masukkan tujuan konversi(K/F/R)!");
if(tujuan.equals("K")||tujuan.equals("F")||tujuan.equals("k")||tujuan.equals("f")||tujuan.equals("R")){
hasil = KSI.hitungSuhu(tujuan);
JOptionPane.showMessageDialog(null,"hasil konversi adalah>>"+ hasil);}
else
JOptionPane.showMessageDialog(null,"maaf input tujuan anda salah, ulangi lagi!");
}while(!tujuan.equals("K")&&!tujuan.equals("F")&&!tujuan.equals("R")&&!tujuan.equals("k")&&!tujuan.equals("f")&&!tujuan.equals("r"));
JOptionPane.showMessageDialog(null,"hasil konversi adalah>>"+hasil);}
}
coy., gimana logikanya ini., coding panjang gini
BalasHapus