Contoh soal dan latihan algoritma kode program Java kali ini membahas cara menentukan nama bulan. Latihan ini menguji pemahaman seputar kondisi if else dan switch case.
Soal Menentukan Nama Bulan
Buatlah kode program Java yang menampilkan nama bulan berdasarkan angka yang diinput oleh user. Misalnya jika diinput angka 2, tampilkan "Februari", atau jika diinput angka 7 tampilkan "Juli". Jika user menginput di luar angka 1-12, maka tampilkan pesan: "Pilihan tidak tersedia".
Berikut daftar nama bulan:
- Januari
- Februari
- Maret
- April
- Mei
- Juni
- Juli
- Agustus
- September
- Oktober
- November
- Desember
Contoh hasil kode program (1):
Input angka bulan (1-12): 2 Februari
Contoh hasil kode program (2):
Input angka bulan (1-12): 9 September
Contoh hasil kode program (3):
Input angka bulan (1-12): 20 Pilihan tidak tersedia
Tips Membuat Kode Program Menentukan Nama Bulan
Soal ini bisa dipecahkan dengan membuat beberapa kali kondisi if-else, atau menggunakan struktur switch case. Berikut tutorial pendahuluan yang bisa diikuti:
- Pengertian dan Cara Penulisan Variabel Bahasa Java
- Jenis-jenis Operator Perbandingan / Relasional Java
- Percabangan Kondisi IF ELSE Bahasa Java
- Percabangan Kondisi IF ELSE IF Bahasa Java
- Percabangan Kondisi Switch Case Bahasa Java
Kode Program Java Menentukan Nama Bulan (If-Else)
Jika menggunakan struktur kondisi if-else, kode program menentukan nama bulan bisa dibuat sebagai berikut:
import java.util.Scanner; class NamaBulan { public static void main(String args[]){ Scanner input = new Scanner(System.in); System.out.println("## Program Java Menentukan Nama Bulan ##"); System.out.println("========================================="); System.out.println(); int n; System.out.print("Input angka bulan (1-12): "); n = input.nextInt(); if ( n == 1) { System.out.println("Januari"); } else if ( n == 2) { System.out.println("Februari"); } else if ( n == 3) { System.out.println("Maret"); } else if ( n == 4) { System.out.println("April"); } else if ( n == 5) { System.out.println("Mei"); } else if ( n == 6) { System.out.println("Juni"); } else if ( n == 7) { System.out.println("Juli"); } else if ( n == 8) { System.out.println("Agustus"); } else if ( n == 9) { System.out.println("September"); } else if ( n == 10) { System.out.println("Oktober"); } else if ( n == 11) { System.out.println("November"); } else if ( n == 12) { System.out.println("Desember"); } else { System.out.println("Pilihan tidak tersedia"); } } }
Kode program butuh satu variabel n yang akan menampung inputan angka dari user. Angka ini harus antara 1-12 dan dibaca menggunakan perintah n = input.nextInt()
di baris 15.
Kemudian antara baris 17-55 terdapat 12 kali pemeriksaan kondisi if-else. Kodenya sendiri cukup sederhana, kita hanya perlu membandingkan apakah n sama dengan 1, atau apakah n sama dengan 2, dst hingga apakah n sama dengan 12.
Jika user menginput angka selain 1-12, maka akan masuk ke blok else di baris 53. Inilah contoh kode program mencari nama bulan menggunakan struktur if-else.
Kode Program Java Menentukan Nama Bulan (Switch-Case)
Jika menggunakan struktur kondisi switch-case, kode program menentukan nama bulan bisa dibuat sebagai berikut:
import java.util.Scanner; class NamaBulan { public static void main(String args[]){ Scanner input = new Scanner(System.in); System.out.println("## Program Java Menentukan Nama Bulan ##"); System.out.println("========================================="); System.out.println(); int n; System.out.print("Input angka bulan (1-12): "); n = input.nextInt(); switch (n) { case 1: System.out.println("Januari"); break; case 2: System.out.println("Februari"); break; case 3: System.out.println("Maret"); break; case 4: System.out.println("April"); break; case 5: System.out.println("Mei"); break; case 6: System.out.println("Juni"); break; case 7: System.out.println("Juli"); break; case 8: System.out.println("Agustus"); break; case 9: System.out.println("September"); break; case 10: System.out.println("Oktober"); break; case 11: System.out.println("November"); break; case 12: System.out.println("Desember"); break; default : System.out.print("Pilihan tidak tersedia"); } } }
Kali ini saya mengganti semua block if-else menjadi struktur switch case. Terdapat 12 kondisi atau case yang diperiksa, yakni dari case 1, case 2, dst hingga case 12. Jika ternyata user menginput angka di luar 1-12, case default di baris 55 yang akan berjalan.
Kode Program Java Menentukan Nama Bulan (Bonus)
Sebagai bonus, saya ingin membuat kode program alternatif:
import java.util.Scanner; class NamaBulan { public static void main(String args[]){ Scanner input = new Scanner(System.in); System.out.println("## Program Java Menentukan Nama Bulan ##"); System.out.println("========================================="); System.out.println(); int n; System.out.print("Input angka bulan (1-12): "); n = input.nextInt(); String[] bulan = { "Januari", "Februari", "Maret", "April", "Mei", "Juni","Juli", "Agustus", "September", "Oktober", "November", "Desember" }; if ((n < 1) || (n > 12)) { System.out.println("Pilihan tidak tersedia"); } else { System.out.println(bulan[n-1]); } } }
Disini saya memanfaatkan nomor index array untuk menampilkan nama bulan.
Daftar nama bulan dibuat ke dalam array bulan antara baris 17-21. Kemudian terdapat kondisi if di baris 23 untuk memastikan user tidak menginput angka diluar 1-12.
Jika user menginput angka 1-12, maka kita tinggal jalankan System.out.println(bulan[n-1])
seperti di baris 27. Nilai n harus dikurangi 1 angka karena index array mulai dari nol, bukan 1. Sedangkan nama bulan dimulai dari angka 1 untuk "Januari".
Demikian contoh kode program menentukan nama bulan dalam bahasa Java. Semoga bisa bermanfaat.