Latihan Kode Program Python: Menentukan Nama Hari

Contoh soal dan latihan kode program bahasa Python kali ini membahas cara menentukan nama hari. Latihan ini menguji pemahaman seputar kondisi if else atau elif, serta struktur match case.


Soal Menentukan Nama Hari

Buatlah kode program dalam bahasa Python 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):

##  Program Python Menentukan Nama Hari  ##
===========================================

Input angka hari (1-7): 6
Sabtu

Contoh hasil kode program (2):

##  Program Python Menentukan Nama Hari  ##
===========================================

Input angka hari (1-7): 2
Selasa

Contoh hasil kode program (3):

##  Program Python Menentukan Nama Hari  ##
===========================================

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

Tips Membuat Kode Program Menentukan Nama Hari

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

Silahkan coba sebentar membuat kode programnya.


Kode Program Python Menentukan Nama Hari (If Else)

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

print('##  Program Python Menentukan Nama Hari  ##')
print('===========================================')
print()

x = int(input('Input angka hari (1-7): '))

if x == 1:
  print('Senin')
elif x == 2:
  print('Selasa')
elif x == 3:
  print('Rabu')
elif x == 4:
  print('Kamis')
elif x == 5:
  print('Jumat')
elif x == 6:
  print('Sabtu')
elif x == 7:
  print('Minggu')
else:
  print('Pilihan tidak tersedia')

Latihan Kode Program Python - Menentukan Nama Hari

Di baris 5, perintah input() dipakai untuk meminta angka pilihan user. Data ini ditampung ke variabel x.

Secara default perintah input() mengembalikan data bertipe string, akan tetapi kita perlu tipe data integer karena variabel x nantinya akan dipakai dalam perhitungan. Proses konversi dari tipe string menjadi integer dilakukan oleh fungsi int().

Kemudian antara baris 7-22 terdapat 7 kali pemeriksaan kondisi elif. Kodenya sendiri cukup sederhana, kita hanya perlu membandingkan apakah x sama dengan 1, atau apakah x sama dengan 2, dst hingga apakah x sama dengan 7.

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


Kode Program Bahasa Python Menentukan Nama Hari (Match Case)

Python verso 3.10 membawa salah satu fitur yang sangat menarik, yakni struktur kondisi match case. Dalam bahasa pemrograman lain, ini mirip seperti struktur switch case. Berikut cara penggunaannya untuk memecahkan soal menentukan nama hari:

print('##  Program Python Menentukan Nama Hari  ##')
print('===========================================')
print()

x = int(input('Input angka hari (1-7): '))

match x:
  case 1:
    print('Senin')
  case 2:
    print('Selasa')
  case 3:  
    print('Rabu')
  case 4:  
    print('Kamis')
  case 5:  
    print('Jumat')
  case 6:  
    print('Sabtu')
  case 7:  
    print('Minggu')
  case _:  
    print('Pilihan tidak tersedia')

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


Kode Program Bahasa Python Menentukan Nama Hari (Bonus)

Sebagai bonus, saya ingin membuat kode program alternatif:

print('##  Program Python Menentukan Nama Hari  ##')
print('===========================================')
print()

x = int(input('Input angka hari (1-7): '))

match x:
  case 1:
    hari = 'Senin'
  case 2:
    hari = 'Selasa'
  case 3:  
    hari = 'Rabu'
  case 4:  
    hari = 'Kamis'
  case 5:  
    hari = 'Jumat'
  case 6:  
    hari = 'Sabtu'
  case 7:  
    hari = 'Minggu'
  case _:  
    print('Pilihan tidak tersedia')
    
if (x >= 1) and (x <= 7):
  print('Hari ke-',x,' adalah ',hari,sep="")

Hasil kode program:

##  Program Python Menentukan Nama Hari  ##
===========================================

Input angka hari (1-7): 6
Hari ke-6 adalah Sabtu

Disini saya tetap menggunakan kondisi match case, akan tetapi perintah yang dijalankan pada setiap case akan menyimpan nama hari ke dalam variabel hari.

Kemudian di baris 25 akan diperiksa apakah isi variabel x berada antara 1-7. Jika iya, tampilkan nama hari yang tersimpan di variabel hari.

Dalam pembuatan kode program sebenarnya, kita lebih banyak menggunakan teknik seperti ini. Hasil kondisi match case biasanya tidak langsung ditampilkan, tapi disimpan terlebih dahulu ke dalam sebuah variabel dan baru diproses pada akhir kode program.


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

Add Comment