Aplikasi Android Body Mass Index
Ingin tahu apakah berat badan kita normal atau ideal, atau obesitas dengan tinggi badan yang kita miliki
Berat Ideal versi Rumus BMI
BMI adalah suatu rumus kesehatan, di mana berat badan (BB) seseorang (kg) dibagi dengan tinggi badan (TB) pangkat dua (m2).
BMI = (BB) / [(TB) * (TB)]
Misalnya: BB = 45 kg dan TB = 165 cm, maka
BMI = (45) / [(1.65) * (1.65)] = 16.5
Apakah Anda termasuk kurus, normal, atau overwight? Lihat patokan di bawah ini:
BMI < 18.5 = berat badan kurang (underweight)
BMI 18.5 - 24 = normal
BMI 25 - 29 = kelebihan berat badan (overweight)
BMI >30 = obesitas
BMI adalah suatu rumus kesehatan, di mana berat badan (BB) seseorang (kg) dibagi dengan tinggi badan (TB) pangkat dua (m2).
BMI = (BB) / [(TB) * (TB)]
Misalnya: BB = 45 kg dan TB = 165 cm, maka
BMI = (45) / [(1.65) * (1.65)] = 16.5
Apakah Anda termasuk kurus, normal, atau overwight? Lihat patokan di bawah ini:
BMI < 18.5 = berat badan kurang (underweight)
BMI 18.5 - 24 = normal
BMI 25 - 29 = kelebihan berat badan (overweight)
BMI >30 = obesitas
disini saya mencoba program android menghitung BMI dan ini adalah program pertama saya pertama saya. bagi yang ingin download project eclipse nya dapat mendownload disini
program .apk untuk diinstall di platform android ada di folder bin/BMI.apk
berikut screenshoot aplikasinya:
Penjelasan program :
public class MainActivity extends Activity implements OnClickListener{
EditText weight,height;
Button bmi,exit;
ImageView img;
Implements onClickListener , merupakan pemanggilan interface onClickListener yang didalamnya terdapat method onClick.
Kemudian kita mendeklarasikan variabel yang terdapat pada layout
weight = (EditText) findViewById(R.id.weight);
height= (EditText)
findViewById(R.id.height);
bmi= (Button)
findViewById(R.id.bmi);
exit= (Button)
findViewById(R.id.exit);
img=(ImageView)findViewById(R.id.img);
bagian syntax diatas adalah membuat objek baru dengan variabel-variabel yang telah kita deklarasikan diatas, variabel-variabel ini akan menampung nilai dari pencarian pencarian berdasarkan id pada folder res di file activity_main.xml atau pada layout program
contoh:
weight = (EditText) findViewById(R.id.weight);
bmi.setOnClickListener(this);
exit.setOnClickListener(this);
merupakan event yang mengarahkan kepada handle yang berada pada method onClick , yaitu click tombol bmi dan tombol exit
public void onClick(View v) {
// TODO Auto-generated
method stub
switch (v.getId()){
case R.id.bmi:
muncul();
break;
case R.id.exit:
AlertDialog.Builder
ab=new
AlertDialog.Builder(MainActivity.this)
.setMessage("Apakah anda
ingin keluar?").setTitle("Exit")
.setPositiveButton("Ya", new
DialogInterface.OnClickListener() {
@Override
public void
onClick(DialogInterface dialog, int which) {
// TODO Auto-generated
method stub
finish();
}
}).setNegativeButton("Tidak",new
DialogInterface.OnClickListener() {
@Override
public void
onClick(DialogInterface dialog, int which) {
// TODO Auto-generated
method stub
}
});
ab.show();
break;
}
}
Bagian ini adalah untuk mengeksekusi perintah ketikan tombol diklik, kita menggunakan operasi switch case untuk mengambil keputusan, ketika tombol bmi diklik maka operasi muncul() akan dieksekusi, namun jika tombol exit yang diklik maka akan dimunculkan aler dialog untuk pilihan keluar dari aplikasi
private float hitBMI(float bb, float tb){
float hasil;
hasil=(float)(bb/(tb*tb));
return hasil;
}
Ini adalah bagian rumus menghitung body mass index rumusnya : BMI=(BB/[TB*TB])
private void muncul(){
float a=Float.valueOf(hitBMI(Float.parseFloat(weight.getText().toString()),Float.parseFloat(height.getText().toString())));
if(Math.round(a)<18.5){
Toast.makeText(this, "Your body is
underweight)", Toast.LENGTH_SHORT).show();
img.setImageResource(R.drawable.im2);
}
else if((Math.round(a)>=18.5)&&(Math.round(a)<=24)){
Toast.makeText(this, "Your body is
Normal", Toast.LENGTH_SHORT).show();
img.setImageResource(R.drawable.im1);
}
else if((Math.round(a)>=25)&&(Math.round(a)<=29)){
Toast.makeText(this, "Your body is
overweight", Toast.LENGTH_SHORT).show();
img.setImageResource(R.drawable.im3);
}
else if(Math.round(a)>=30){
Toast.makeText(this, "Your body is
obesity", Toast.LENGTH_SHORT).show();
img.setImageResource(R.drawable.im4);
}
Bagian ini adalah operasi muncul() yang menampilkan hasil Body Mass Index jika kita mengklik tombol bmi, di variabel a kita memperoleh hasil perhitungan dari rumus hitBMI.
ketika telah dilakukan perhitungan di rumus hitBMI maka di operasi muncul() akan dilakukan pengambilan keputusan dengan if-else if untuk membandingkan kondisi mana yang paling sesuai dengan nilai a.
Kondisi if else if sesuai dengan patokan atau rentang menghitung BMI
Math.round adalah fungsi untuk menentukan nilai a yang paling mendekati setelah dilakukan pembulatan angka dibelakang koma.
ConversionConversion EmoticonEmoticon