Program Mobile Bmi

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 6

Nama : Muhammad Fariz Sholihin

NIM : 22225201053
Mata Kuliah : Pemprograman Aplikasi
Mobile
Tugas Project Menghitung BMI
MEMBUAT APLIKASI PENGHITUNG BMI DI ANDROID STUDIO

LANGKAH PERTAMA ADALAH MEMBUAT FILE TERLEBIH DAHULU


Untuk langkah selanjutnya mengisi halaman activity Xml sebagai desain dan Kotlin Untuk
halaman Fungsi logic yang terhubung dengan masing masing XML nya

Aplikasi Penghitung BMI (Body Mass Index) :Menghitung BMI berdasarkan tinggi dan
berat badan pengguna.
Berikut Kodingan xml untuk aplikasi penghitung bmi
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:background="@drawable/warna2"
android:padding="16dp">
<ImageView
android:layout_width="match_parent"
android:layout_height="150dp"
android:src="@drawable/bmi"/>
<TextView
android:layout_width="match_parent"
android:layout_height="30dp"
android:text="Aplikasi Penghitung Index Berat Badan"
android:textColor="@color/black"
android:textAlignment="center"
android:layout_marginBottom="20dp"
android:textSize="20sp"/>
<EditText
android:textColor="@color/black"
android:background="@drawable/bro"
android:id="@+id/beratBadanEditText"
android:layout_width="match_parent"
android:layout_height="50dp"
android:hint="Masukkan berat badan (kg)"
android:inputType="numberDecimal"
android:layout_marginTop="8dp" />

<EditText
android:textColor="@color/black"
android:id="@+id/tinggiBadanEditText"
android:layout_width="match_parent"
android:layout_height="50dp"
android:background="@drawable/bro"
android:hint="Masukkan tinggi badan (cm)"
android:inputType="numberDecimal"
android:layout_marginTop="20dp" />

<Button
android:id="@+id/hitungButton"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:text="Hitung BMI"
android:backgroundTint="@color/black"
android:layout_gravity="center"
android:layout_marginTop="46dp" />

<TextView
android:textColor="@color/black"
android:id="@+id/hasilTextView"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Hasil BMI akan ditampilkan di sini"
android:textSize="18sp"
android:layout_marginTop="16dp" />
</LinearLayout>

Berikut Logic Kotlin nya


package com.example.farizsholihin

import android.annotation.SuppressLint
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.widget.Button
import android.widget.EditText
import android.widget.TextView
import kotlin.math.pow

class BMI : AppCompatActivity() {

@SuppressLint("MissingInflatedId")
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_bmi)

val beratBadanEditText: EditText =


findViewById(R.id.beratBadanEditText)
val tinggiBadanEditText: EditText =
findViewById(R.id.tinggiBadanEditText)
val hitungButton: Button = findViewById(R.id.hitungButton)
val hasilTextView: TextView = findViewById(R.id.hasilTextView)

hitungButton.setOnClickListener {
val beratBadan =
beratBadanEditText.text.toString().toDoubleOrNull()
val tinggiBadan =
tinggiBadanEditText.text.toString().toDoubleOrNull()

if (beratBadan != null && tinggiBadan != null) {


val tinggiBadanMeter = tinggiBadan / 100 // konversi
tinggi
dari cm ke
meter val bmi = beratBadan / tinggiBadanMeter.pow(2)
val kategori = when {
bmi < 18.5 -> "Berat badan kurang"
bmi < 24.9 -> "Berat badan normal"
bmi < 29.9 -> "Berat badan berlebih"
else -> "Obesitas"
}
hasilTextView.text = "BMI: %.2f\nKategori: %s".format(bmi,
kategori)
} else {
hasilTextView.text = "Harap masukkan tinggi dan berat bada
yang valid"

You might also like