2.1 KiB
2.1 KiB
Kalkulator BMI 📱⚖️
Raihan Ariq Muzakki (202310715297)
F5A5 – Mobile Programming
Aplikasi Kalkulator BMI ini dikembangkan menggunakan Android Studio + Jetpack Compose dengan fokus pada akurasi perhitungan, pengalaman pengguna yang sederhana, serta dukungan dua standar pengukuran: SI (kg/m²) dan USC (lbs/in²).
✨ Fitur Utama
- ✅ Perhitungan BMI berdasarkan dua standar (SI dan USC)
- ✅ Input otomatis ditangani agar NaN berubah menjadi 0 sebelum kalkulasi
- ✅ Format angka otomatis menjadi 1 angka di belakang koma
- ✅ Reset nilai input otomatis menggunakan LaunchedEffect saat pengguna berpindah standar
- ✅ Penentuan kategori BMI dengan kondisi yang lebih bersih & mudah dipahami
- ✅ Desain UI memakai Compose: gambar, tombol aksi (Calculate & Clear), dan tata letak responsif
- ✅ Termasuk Unit Testing untuk fungsi perhitungan BMI
📘 Dokumentasi
Petunjuk detail dapat dibaca di:
https://docs.google.com/document/d/1iGiC0Bg3Bdcd2Maq45TYkCDUkZ5Ql51E/edit?rtpof=true
Starter dimodifikasi dan terinspirasi dari:
https://developer.android.com/codelabs/basic-android-compose-calculate-tip#0
🔧 Referensi
- Kotlin Math Library
https://kotlinlang.org/api/core/kotlin-stdlib/kotlin.math/ - Perhitungan pangkat pada Kotlin
https://www.baeldung.com/kotlin/power-of-a-number - Konversi cm → inch
https://www.splashlearn.com/math-vocabulary/cm-to-inches - Konversi kg → lbs
https://convertlive.com/id/u/mengkonversi/kilo/ke/pound - Unit Testing pada Android
https://medium.com/@deonolarewaju/introduction-to-unit-testing-in-android-kotlin-4331eb2366a9 - Ikon PNG
https://www.flaticon.com/
🤝 Kontribusi AI
Pengembangan aplikasi ini turut dibantu oleh:
- Claude AI
- ChatGPT
Kontribusi yang diberikan:
- Penanganan nilai NaN → 0
- Format desimal
- Penerapan rumus BMI sesuai standar SI & USC
- LaunchedEffect untuk reset input
- Simplifikasi kondisi kategori BMI
- Penyusunan Unit Testing
- Penyempurnaan layout, penambahan ikon, dan tombol aksi