Modul A1: Latihan Asesmen 1
Capaian Pembelajaran Mata Kuliah
Mampu menggunakan elemen-elemen pemrograman, yaitu variabel, percabangan, dan pengulangan untuk membuat algoritma sederhana.
Materi
Materi ini untuk persiapan asesmen 1. Di asesmen 1, mahasiswa diminta membuat program sederhana yang menggabungkan percabangan dan pengulangan. Berikut contoh tipe program yang harus dibuat di asesmen 1.
Buatlah program yang menerima input dari user berupa bilangan. Misal user memasukkan bilangan 8. Lalu, program harus mencetak ke layar sebanyak 8 baris kata berikut.
- Jika barisnya ganjil (baris 1, 3, 5, dst.), tulis kata
ganjil - Jika barisnya genap, tulis kata
genap
Untuk membuat program seperti itu, apa yang harus kita lakukan?
Pertama, tentukan hal-hal yang sudah jelas.
-
User harus bisa memasukkan input berupa bilangan bulat (integer).
-
Program harus mencetak baris sejumlah bilangan yang dimasukkan user.
Lewat kedua poin ini, kita tahu bahwa program sudah bisa menerima input
dan mencetak baris sejumlah input.
Hanya saja, program ini baru mencetak kata yang sama untuk setiap baris, yaitu ganjil
karena memang yang diulang adalah perintah print("ganjil") (baris ke-3).
Padahal, kita ingin setiap barisnya berbeda bergantung pada
baris tersebut ganjil atau genap.
Kedua, tentukan polanya.
- Jika baris ganjil, print
ganjil - Jika baris genap, print
genap
Bagaimana cara mendeteksi suatu baris itu ganjil atau genap?
Jika kita ingat, variabel i berisi elemen-elemen dari suatu iterabel.
Iterabel yang digunakan di program ini adalah iterabel yang dihasilkan
fungsi range(bilangan).
Jika bilangan sama dengan 8, iterabel yang dihasilkan
fungsi range(8) adalah
i nya
baris ke-1, i = 0
baris ke-2, i = 1
baris ke-3, i = 2
baris ke-4, i = 3
baris ke-5, i = 4
baris ke-6, i = 5
baris ke-7, i = 6
baris ke-8, i = 7
i + 1sama dengan posisi barisnya.- Jika
i + 1ganjil, kita berada di baris ganjil dan jikai + 1genap, kita berada di baris genap.
Jika kita ingin nilai i benar-benar sama dengan posisi barisnya,
kita bisa menggunakan range(1, bilangan + 1) daripada range(bilangan).
Dengan demikian, iterabel yang dihasilkan sama dengan posisi barisnya
(untuk contoh bilangan = 8).
Ketiga kita lakukan abstraksi:
Kita cari persamaan dari setiap baris dengan mengabaikan detail.
Dalam hal ini, untuk setiap baris, kita pasti punya variabel, i yang isinya
bilangan baris tersebut.
Terhadap i bisa kita cek ganjil/genapnya.
Catatan
Cara cek suatu bilangan ganjil/genap adalah dengan menggunakan operator modulus (%).
- Jika
i % 2sama dengan 0, makaigenap - Jika
i % 2tidak sama dengan 0, makaiganjil
Terakhir, kita terjemahkan abstraksi ini menjadi sebuah algoritma.
Kerjakan
Buatlah program yang outputnya seperti berikut. Untuk setiap program, jumlah baris ditentukan bilangan yang dimasukkan user.
-
# Misal user memasukkan angka 7 yang adalah ganjil # Maka setiap baris ganjil mucul nomor baris dan kata ganjil # Sementara baris genap muncul nomor baris dan * 1 ganjil 2 * 3 ganjil 4 * 5 ganjil 6 * 7 ganjilPetunjuk
Kita harus cek ganjil genap dua kali, yaitu terhadap bilangan input user dan terhadap
i(baris).
Buatlah program yang outputnya seperti berikut. Untuk setiap program, jumlah baris tetap tapi pola output ditentukan bilangan yang dimasukkan user.