Download Aplikasi jar-nya di sini.
import javax.swing.JOptionPane;
/**
*
* @author ERFAN FEBRIANTORO, NIM.1210652040 TEKNIK INFORMATIKA - UNMUH JEMBER
*/
public class CekIndeksMasaTubuh {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
// Membuat Pemrograman JAVA lebih interaktif dengan menerima Input dari Keyboard menggunakan JOPtionPane
// Mendeklarasikan tipe data & variabel :
String berat, tinggi, welcome1, welcome2, imtMu, kurang, pas, lebih,
lebih1, lebih2, lebih3, nasehatk, nasehatp, nasehatl, salahbb, salahtb, saran, bye;
welcome1 = "SELAMAT DATANG.\nAnda sedang menjalankan Aplikasi JAVA\nMenghitung Indeks Masa Tubuh (IMT)."
+ "\nPresented by erfan2040.blogspot.com (c) 2012.";
welcome2 = "IMT dihitung dengan membagi Berat Badan (Kg) dengan Kuadrat Tinggi Badan (m2)."
+ "\nKlasifikasi IMT (Kg/m2) orang dewasa berdasarkan World Health Organization (WHO) Tahun 1988 :"
+ "\na. <18,5 ==> UNDERWEIGHT"
+ "\nb. 18,5 - <25 ==> BATAS NORMAL"
+ "\nc. 25 - <30 ==> OVERWEIGHT - PREOBESE"
+ "\nd. 30 - <35 ==> OVERWEIGHT - OBESE I"
+ "\ne. 35 - <40 ==> OVERWEIGHT - OBESE II"
+ "\nf. >40 ==> OVERWEIGHT - OBESE III"
+ "\n"
+ "\nSelamat Mencoba . . .";
imtMu = "Maka, Indeks Massa Tubuh (IMT) Anda adalah :";
kurang = "UPPSS . . . !!!\nIndeks Massa Tubuh (IMT) Anda KURANG,\nAnda mengalami UNDERWEIGHT !!"
+ "\nBeresiko terhadap masalah klinis.";
pas = "SELAMAT !!!\nIndeks Massa Tubuh (IMT) Anda pada BATAS NORMAL,\nBerat Badan Anda IDEAL !!"
+ "\nBerpeluang tanpa resiko.";
lebih = "AWAS !!!\nIndeks Massa Tubuh (IMT) Anda MULAI MELEBIHI BATAS NORMAL,\nAnda mengalami OVERWEIGHT - PREOBESE !!"
+ "\nBeresiko RENDAH terkena penyakit akibat kegemukan.";
lebih1 = "AWAS !!!\nIndeks Massa Tubuh (IMT) Anda MELEBIHI BATAS NORMAL,\nAnda mengalami OVERWEIGHT - OBESE I !!"
+ "\nBeresiko SEDANG, terkena penyakit akibat kegemukan.";
lebih2 = "AWAS !!!\nIndeks Massa Tubuh (IMT) Anda MELEBIHI BATAS NORMAL,\nAnda mengalami OVERWEIGHT - OBESE II !!"
+ "\nBeresiko TINGGI, terkena penyakit akibat kegemukan meningkat.";
lebih3 = "AWAS !!!\nIndeks Massa Tubuh (IMT) Anda SANGAT MELEBIHI BATAS NORMAL,\nAnda mengalami OVERWEIGHT - PREOBESE III !!"
+ "\nBeresiko SANGAT TINGGI, terkena penyakit akibat kegemukan meningkat.";
nasehatk = "Anda disarankan untuk MENAMBAH berat badan sebanyak ";
nasehatp = "Pertahankan Berat Badan Anda antara";
nasehatl = "Anda disarankan untuk MENGURANGI berat badan sebanyak ";
saran = "Berat Badan Ideal Anda antara :";
salahbb = "Maaf, data Berat Badan yang Anda inputkan SALAH.\nUlangi . . . !!";
salahtb = "Maaf, data Tinggi Badan yang Anda inputkan SALAH.\nUlangi . . . !!";
bye = "TERIMA KASIH telah mencoba aplikasi ini.\nJika Anda suka, Don't forget to like this post or share it."
+ "\nPresented by erfan2040.blogspot.com (c) 2012.";
double beratMu = 0, tinggiMu = 0, hasil, selisih1 = 0, selisih2 = 0;
boolean tes = true;
// Membuat ucapan selamat datang & selamat mencoba :
JOptionPane.showMessageDialog(null, welcome1);
JOptionPane.showMessageDialog(null, welcome2);
// Menampilkan jendela input untuk mengisikan berat badan user :
do {
try {
berat = JOptionPane.showInputDialog(null, "Masukkan Berat Badan Anda dalam Kilogram (Kg)!"
+ "\nGunakan tanda titik (.) sebagai pemisah desimal :");
beratMu = Double.parseDouble(berat);
JOptionPane.showMessageDialog(null, "Berat Badan yang Anda inputkan adalah " + beratMu + " Kg");
break;
} catch (Exception e) {
// Menampilkan peringatan jika user menginputkan data berat badan yang salah atau bukan angka :
JOptionPane.showMessageDialog(null, salahbb);
}
} while (tes);
// Menampilkan jendela input untuk mengisikan tinggi badan user :
do {
try {
tinggi = JOptionPane.showInputDialog(null, "Masukkan Tinggi Badan Anda dalam Centimeter (cm)!"
+ "\nGunakan tanda titik (.) sebagai pemisah desimal :");
tinggiMu = Double.parseDouble(tinggi);
JOptionPane.showMessageDialog(null, "Tinggi Badan yang Anda inputkan adalah " + tinggiMu + " cm;");
break;
} catch (Exception e) {
// Menampilkan peringatan jika user menginputkan data tinggi badan yang salah atau bukan angka :
JOptionPane.showMessageDialog(null, salahtb);
}
} while (tes);
// Menghitung IMT user :
tinggiMu = tinggiMu / 100;
hasil = beratMu / (tinggiMu * tinggiMu);
JOptionPane.showMessageDialog(null, "Berat Badan Anda adalah " + beratMu + " Kg;"
+ "\nTinggi Badan Anda adalah " + tinggiMu + " meter;"
+ "\n" + imtMu + "\n" + hasil);
// Menentukan kategori IMT user :
if (hasil < 18.5) {
JOptionPane.showMessageDialog(null, kurang);
} else if ((hasil >= 18.5) & (hasil < 25)) {
JOptionPane.showMessageDialog(null, pas);
} else if ((hasil >= 25) & (hasil < 30)) {
JOptionPane.showMessageDialog(null, lebih);
} else if ((hasil >= 30) & (hasil < 35)) {
JOptionPane.showMessageDialog(null, lebih1);
} else if ((hasil >= 35) & (hasil < 40)) {
JOptionPane.showMessageDialog(null, lebih2);
} else if (hasil >= 40) {
JOptionPane.showMessageDialog(null, lebih3);
}
// Menghitung Berat Badan Ideal Minimal & Maksimal yang disarankan untuk user :
int beratMin, beratMax;
beratMin = (int) (18.5 * tinggiMu * tinggiMu);
beratMax = (int) (24.99 * tinggiMu * tinggiMu);
if (beratMu < beratMin) {
selisih1 = beratMin - beratMu;
} else if (beratMu > beratMax) {
selisih2 = beratMu - beratMax;
}
// Menampilkan saran untuk user :
if (hasil < 18.5) {
JOptionPane.showMessageDialog(null, nasehatk + " " + selisih1 + " Kg,"
+ "\n" + saran + " " + beratMin + " - " + beratMax + " Kg.");
} else if (hasil >= 25) {
JOptionPane.showMessageDialog(null, nasehatl + " " + selisih2 + " Kg,"
+ "\n" + saran + " " + beratMin + " - " + beratMax + " Kg.");
} else {
JOptionPane.showMessageDialog(null, nasehatp + " " + beratMin + " - " + beratMax + " Kg.");
}
// Menampilkan ucapan terima kasih :
JOptionPane.showMessageDialog(null, bye);
}
}
Semoga Bermanfaat.
No comments:
Post a Comment