Tugas 5 - Membuat Aplikasi Kalkulator dengan Menggunakan Kotlin
Membuat Aplikasi Kalkulator dengan menggunakan Kotlin
| Nama | NRP |
|---|---|
| Yusuf Hasan Nazila | 5025211225 |
Pada tugas ini, saya membuat sebuah aplikasi Kalkulator Sederhana menggunakan Android Studio dengan framework Jetpack Compose. Aplikasi ini dapat melakukan operasi dasar: penjumlahan, pengurangan, perkalian, dan pembagian.
Demo Video
Link Source Code
Langkah-Langkah Pembuatan Aplikasi
- Inisialisasi Project Baru
Buat project baru di Android Studio dengan template Empty Activity dan aktifkan opsi Jetpack Compose. - Desain Tampilan
GunakanColumnuntuk menyusun:- Kotak hasil kalkulasi menggunakan
Card. - Grid tombol angka dan operator menggunakan kombinasi
RowdanColumn.
- Kotak hasil kalkulasi menggunakan
- Implementasi Logika
Setiap tombol yang ditekan menambahkan karakter ke input. Saat tombol "=" ditekan, input dievaluasi menjadi hasil akhir.
Struktur Kode Utama
1. Tampilan Utama
Column {
Card {
Text(input)
Text(result)
}
Column {
Row { Button("7") Button("8") Button("9") Button("/") }
Row { Button("4") Button("5") Button("6") Button("*") }
Row { Button("1") Button("2") Button("3") Button("-") }
Row { Button("0") Button("C") Button("=") Button("+") }
}
}
2. Evaluasi Ekspresi
fun evaluateExpression(expression: String): String {
return try {
val tokens = tokenize(expression)
val result = evaluateTokens(tokens)
result.toString()
} catch (e: Exception) {
"Error"
}
}
3. Tokenizer dan Evaluasi
fun tokenize(expression: String): List<String> { /* Memecah input menjadi token */ }
fun evaluateTokens(tokens: List<String>): Double { /* Menghitung berdasarkan operator */ }
Penjelasan Struktur Program
Berikut adalah penjelasan singkat tentang struktur program kalkulator ini:
1. MainActivity
Di file MainActivity.kt, fungsi utama aplikasi dibuat.
Pada fungsi onCreate():
- Mengaktifkan fitur Edge-to-Edge Display agar aplikasi tampil fullscreen.
- Memanggil fungsi
CalculatorScreen()menggunakan Jetpack Compose untuk membangun UI kalkulator.
2. CalculatorScreen
Fungsi @Composable CalculatorScreen() bertugas membuat tampilan kalkulator, terdiri dari:
- Card untuk menampilkan input operasi dan hasil perhitungan.
- Button Grid untuk angka 0-9 dan operator (+, -, *, /).
3. Evaluasi Perhitungan
Fungsi evaluateExpression() digunakan untuk menghitung hasil dari input ekspresi:
- tokenize() - Memecah input menjadi angka dan operator.
- evaluateTokens() - Mengevaluasi daftar token untuk mendapatkan hasil akhir.
Komentar
Posting Komentar