Latihan Kode Program Java: Menentukan Nama Hari

Contoh soal dan latihan algoritma kode program Java kali ini membahas cara menentukan nama hari. Latihan ini menguji pemahaman seputar kondisi if else dan switch case.


Soal Menentukan Nama Hari

Buatlah kode program Java yang menampilkan nama hari berdasarkan angka yang diinput oleh user. Misalnya jika diinput angka 1, tampilkan "Senin", atau jika diinput angka 4 tampilkan "Kamis". Jika user menginput di luar angka 1-7, maka tampilkan pesan: "Pilihan tidak tersedia".

Berikut daftar nama hari:

  1. Senin
  2. Selasa
  3. Rabu
  4. Kamis
  5. Jumat
  6. Sabtu
  7. Minggu

Contoh hasil kode program (1):

Input angka hari (1-7): 3
Rabu

Contoh hasil kode program (2):

Input angka hari (1-7): 2
Selasa

Contoh hasil kode program (3):

Input angka hari (1-7): 10
Pilihan tidak tersedia

Tips Membuat Kode Program Menentukan Nama Hari

Soal ini bisa dipecahkan dengan membuat beberapa kali kondisi if-else, atau menggunakan struktur switch case. Berikut tutorial pendahuluan yang bisa diikuti:


Kode Program Java Menentukan Nama Hari (If-Else)

Jika menggunakan struktur kondisi if-else, kode program menentukan nama hari bisa dibuat sebagai berikut:

import java.util.Scanner;
  
class NamaHari {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Menentukan Nama Hari  ##");
    System.out.println("=========================================");
    System.out.println();
    
    int n;
    
    System.out.print("Input angka hari (1-7): ");
    n = input.nextInt();
    
    if ( n == 1) {
      System.out.println("Senin");
    }
    else if ( n == 2) {
      System.out.println("Selasa");
    }
    else if ( n == 3) {
      System.out.println("Rabu");
    }
    else if ( n == 4) {
      System.out.println("Kamis");
    }
    else if ( n == 5) {
      System.out.println("Jumat");
    }
    else if ( n == 6) {
      System.out.println("Sabtu");
    }
    else if ( n == 7) {
      System.out.println("Minggu");
    }
    else {
      System.out.println("Pilihan tidak tersedia");
    }

  }
}
Agar bisa berjalan, simpan kode diatas ke dalam file NamaHari.java, lalu compile dengan perintah javac NamaHari.java dan jalankan (run) dengan perintah java NamaHari. Panduan lebih lengkap bisa ke Cara Menjalankan kode Program Java (Proses Compile).

Latihan Kode Program Java - Menentukan Nama Hari

Kode program butuh satu variabel, yakni n yang akan menampung inputan angka dari user. Angka ini harus antara 1-7 dan dibaca menggunakan perintah n = input.nextInt() di baris 15.

Kemudian antara baris 17-40 terdapat 7 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 7.

Jika user menginput angka selain 1-7, maka akan masuk ke blok else di baris 39. Inilah contoh kode program mencari nama hari menggunakan struktur if-else.


Kode Program Java Menentukan Nama Hari (Switch-Case)

Jika menggunakan struktur kondisi switch-case, kode program menentukan nama hari bisa dibuat sebagai berikut:

import java.util.Scanner;
  
class NamaHari {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Menentukan Nama Hari  ##");
    System.out.println("=========================================");
    System.out.println();
    
    int n;
    
    System.out.print("Input angka hari (1-7): ");
    n = input.nextInt();
    
    switch (n) {
     case 1:
       System.out.println("Senin");
       break;
     case 2:
       System.out.println("Selasa");
       break;
     case 3:
       System.out.println("Rabu");
       break;
     case 4:
       System.out.println("Kamis");
       break;
     case 5:
       System.out.println("Jumat");
       break;
     case 6:
       System.out.println("Sabtu");
       break;
     case 7:
       System.out.println("Minggu");
       break;
     default :
       System.out.println("Pilihan tidak tersedia");
    }

  }
}

Kali ini saya mengganti semua block if-else menjadi struktur switch case. Terdapat 7 kondisi atau case yang diperiksa, yakni dari case 1, case 2, dst hingga case 7. Jika ternyata user menginput angka di luar 1-7, case default di baris 39 yang akan berjalan.


Kode Program Java Menentukan Nama Hari (Bonus)

Sebagai bonus, saya ingin membuat kode program alternatif:

import java.util.Scanner;
  
class NamaHari {
  public static void main(String args[]){
           
    Scanner input = new Scanner(System.in);
      
    System.out.println("##  Program Java Menentukan Nama Hari ##");
    System.out.println("========================================");
    System.out.println();
    
    int n;
    
    System.out.print("Input angka hari (1-7): ");
    n = input.nextInt();
    
    String[] hari = {
      "Senin", "Selasa", "Rabu", "Kamis", 
      "Jumat", "Sabtu", "Minggu"
    };
    
    if ((n < 1) || (n > 7)) {
      System.out.println("Pilihan tidak tersedia");
    }
    else {
      System.out.println(hari[n-1]);
    }

  }
}

Disini saya memanfaatkan nomor index array untuk menampilkan nama hari.

Daftar nama hari dibuat ke dalam array hari antara baris 17-20. Kemudian terdapat kondisi if di baris 22 untuk memastikan user tidak menginput angka diluar 1-7.

Jika user menginput angka 1-7, maka kita tinggal jalankan System.out.println(hari[n-1]) seperti di baris 26. Nilai n harus dikurangi 1 angka karena index array mulai dari nol, bukan 1. Sedangkan nama hari dimulai dari angka 1 untuk "Senin".


Demikian contoh kode program menentukan nama hari dalam bahasa Java. Semoga bisa bermanfaat.

Add Comment