# Kalkulator BMI ## Langkah-langkah: 1. **Clone Repository Project** Saya meng-clone repository project dari GitHub menggunakan Android Studio untuk dijadikan dasar pengerjaan tugas. 2. **Modifikasi Tampilan Aplikasi** Saya meminta bantuan ChatGPT dan DeepSeek untuk memberikan saran tampilan aplikasi agar lebih menarik. Setelah itu, saya menyesuaikan tampilan sesuai arahan yang diberikan. 3. **Mengubah Icon Aplikasi (APK)** Saya mengganti icon aplikasi melalui fitur Image Asset di Android Studio dengan icon baru sesuai arahan dari ChatGPT. 4. **Membuat Unit Test** Bagian Unit Test dikembangkan menggunakan Local Unit Testing dengan JUnit, di mana kerangka awal dan skenario uji coba sebagian dibantu dan disarankan oleh Gemini. 5. **Review dan Uji Coba** Setelah perubahan selesai, saya menjalankan aplikasi untuk memastikan tampilan dan icon sudah berubah dengan baik. *** ## Perubahan ### ๐Ÿ”„ Transformasi Aplikasi * **Dari:** Kalkulator Tip * **Menjadi:** Kalkulator BMI * **Fitur baru:** Hitung BMI dengan 2 sistem satuan (Metric & USC) ### ๐Ÿงฎ Fitur Kalkulasi BMI * โœ… Rumus Metric: berat (kg) / (tinggi (m))ยฒ * โœ… Rumus USC: 703 ร— berat (lbs) / (tinggi (inci))ยฒ * โœ… Kategori BMI: Underweight, Normal, Overweight, Obese * โœ… Validasi input: Handle nilai 0 dan input tidak valid ### ๐ŸŽจ Tampilan UI/UX * **Warna kategori BMI:** * ๐ŸŸฆ Underweight: Biru * ๐ŸŸฉ Normal weight: Hijau * ๐ŸŸง Overweight: Orange * ๐ŸŸฅ Obese: Merah * โœ… Switch toggle untuk ganti satuan Metric/USC * โœ… Input field dengan icon dan keyboard yang optimal ### ๐Ÿงช Testing * โœ… Unit test untuk fungsi kalkulasi BMI * โœ… Test coverage: Semua scenario perhitungan * โœ… Error handling untuk input tidak valid *** ## ๐Ÿ“ฑ Cara Penggunaan BMI Calculator 1. **Masukkan Tinggi Badan** Isi tinggi badan Anda di field "Height" * Untuk Metric: dalam satuan cm (contoh: 170) * Untuk USC: dalam satuan inci (contoh: 70) 2. **Masukkan Berat Badan** Isi berat badan Anda di field "Weight" * Untuk Metric: dalam satuan kg (contoh: 65) * Untuk USC: dalam satuan lbs (contoh: 150) 3. **Pilih Satuan** Gunakan switch "Gunakan Unit (Metric/USC)" untuk memilih satuan: * Metric: cm & kg * USC: inci & lbs 4. **Lihat Hasil** BMI akan otomatis terhitung. Kategori BMI muncul dengan warna: * ๐ŸŸฆ Biru = Underweight (Kurus) * ๐ŸŸฉ Hijau = Normal weight (Normal) * ๐ŸŸง Oranye = Overweight (Gemuk) * ๐ŸŸฅ Merah = Obese (Obesitas) Petunjuk lebih detil dapat dibaca di [https://docs.google.com/document/d/1iGiC0Bg3Bdcd2Maq45TYkCDUkZ5Ql51E/edit?rtpof=true](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](https://developer.android.com/codelabs/basic-android-compose-calculate-tip#0)