Algoritma pemrograman adalah fondasi utama bagi siapa pun yang ingin terjun ke dunia teknologi informasi. Salah satu pilar terpenting dalam algoritma adalah struktur pengulangan atau looping. Tanpa pengulangan, seorang programmer harus menulis baris kode yang sama berulang kali, yang tentu saja tidak efisien dan rentan terhadap kesalahan.
Pengulangan memungkinkan sebuah instruksi dijalankan berkali kali selama kondisi tertentu terpenuhi. Memahami logika pengulangan bukan hanya soal menghafal sintaks bahasa pemrograman seperti Python, C++, atau Java, melainkan soal mengasah kemampuan problem solving. Artikel ini akan menyajikan kumpulan contoh soal algoritma pemrograman pengulangan yang sering muncul dalam ujian maupun tes teknis kerja, lengkap dengan pembahasan mendalam.
Baca juga:Menaklukkan Report Text: Panduan Strategis dan Koleksi Contoh Soal Essay Terlengkap
Apa Itu Struktur Pengulangan dalam Algoritma
Secara umum, terdapat tiga jenis struktur pengulangan yang paling populer digunakan dalam dunia pemrograman:
- For Loop: Digunakan ketika jumlah pengulangan sudah diketahui secara pasti sejak awal.
- While Loop: Digunakan ketika pengulangan dilakukan selama kondisi bernilai benar (true), dan jumlah perulangannya belum tentu diketahui pasti.
- Do While Loop: Mirip dengan while, namun menjamin instruksi dijalankan minimal satu kali sebelum kondisi diperiksa.
Mari kita pelajari lebih dalam melalui latihan soal di bawah ini.
Soal 1 Menampilkan Deret Angka Sederhana
Buatlah algoritma untuk menampilkan angka 1 sampai 10 secara berurutan.
Pembahasan: Ini adalah soal paling dasar untuk memahami pengulangan. Kita bisa menggunakan For Loop karena jumlah pengulangan sudah pasti, yaitu 10 kali.
- Inisialisasi: variabel i dimulai dari 1.
- Kondisi: i harus kurang dari atau sama dengan 10.
- Iterasi: i bertambah 1 setiap kali perulangan selesai (i++). Logika:
FOR i = 1 TO 10 DO PRINT iHasilnya adalah output angka 1 2 3 4 5 6 7 8 9 10.
Soal 2 Menghitung Jumlah Bilangan Genap
Buatlah algoritma yang menerima inputan angka N, lalu tampilkan semua bilangan genap dari 2 hingga N.
Pembahasan: Untuk menyelesaikan ini, kita perlu menggabungkan pengulangan dengan struktur pemilihan (IF).
- Mulai pengulangan dari i = 2 sampai N.
- Di dalam pengulangan, cek apakah i modulo 2 sama dengan 0.
- Jika benar, cetak i. Contoh: Jika N = 8, maka outputnya adalah 2 4 6 8.
Soal 3 Menghitung Total Penjumlahan (Summing)
Buatlah program yang meminta pengguna memasukkan angka N, lalu hitung total hasil penjumlahan 1 + 2 + 3 + … + N.
Pembahasan: Di sini kita membutuhkan variabel penampung, sebut saja total.
- Inisialisasi
total = 0. - Lakukan pengulangan dari i = 1 sampai N.
- Di setiap putaran, perbarui nilai total:
total = total + i. - Tampilkan
totalsetelah pengulangan selesai. Jika input N = 5, maka perhitungannya: 0+1+2+3+4+5 = 15.
Soal 4 Pengulangan Berdasarkan Input Pengguna (Sentinel)
Buatlah algoritma yang terus meminta input angka dari pengguna. Pengulangan baru akan berhenti jika pengguna memasukkan angka 0. Setelah berhenti, tampilkan berapa banyak angka yang telah dimasukkan.
Pembahasan: Karena jumlah pengulangan tidak diketahui, kita menggunakan While Loop.
- Inisialisasi
counter = 0. - Minta input
angka. - Selama
angka != 0lakukan:counter = counter + 1.- Minta input
angkalagi.
- Tampilkan
counter. Ini adalah contoh penggunaan pengulangan untuk validasi atau kontrol dinamis.
Soal 5 Membuat Pola Bintang (Nested Loop)
Tampilkan pola bintang berbentuk segitiga siku siku sebagai berikut untuk N = 4: * **
Pembahasan: Soal ini memerlukan konsep Nested Loop atau pengulangan bersarang (ada loop di dalam loop).
- Outer Loop (Loop Luar): Mengatur baris (i dari 1 sampai N).
- Inner Loop (Loop Dalam): Mengatur jumlah bintang pada setiap baris (j dari 1 sampai i). Logika:
FOR i = 1 TO N DO:FOR j = 1 TO i DO:PRINT "*"PRINT "Enter/Baris Baru"
Soal 6 Menghitung Faktorial Bilangan
Buatlah algoritma untuk menghitung nilai faktorial dari sebuah angka N (N!). Contoh 4! = 4 x 3 x 2 x 1 = 24.
Pembahasan: Konsepnya mirip dengan soal nomor 3, namun operasinya adalah perkalian.
- Inisialisasi
hasil = 1(jangan 0, karena perkalian dengan 0 akan menghasilkan 0). - Loop dari i = N turun sampai 1.
hasil = hasil * i. Output untuk N = 4 adalah 24.
Soal 7 Menentukan Bilangan Prima
Buatlah algoritma untuk mengecek apakah sebuah angka N adalah bilangan prima atau bukan menggunakan pengulangan.
Pembahasan: Bilangan prima hanya habis dibagi 1 dan dirinya sendiri.
- Inisialisasi
jumlah_pembagi = 0. - Loop dari i = 1 sampai N.
- Jika
N % i == 0makajumlah_pembagi = jumlah_pembagi + 1. - Setelah loop, jika
jumlah_pembagi == 2, maka N adalah prima. Strategi ini menguji setiap kemungkinan pembagi secara sistematis.
Soal 8 Deret Fibonacci
Tampilkan N suku pertama dari deret Fibonacci (0, 1, 1, 2, 3, 5, 8, …).
Pembahasan: Deret ini unik karena angka berikutnya adalah jumlah dari dua angka sebelumnya.
- Siapkan dua variabel:
a = 0danb = 1. - Cetak
adanb. - Lakukan pengulangan dari 3 sampai N:
c = a + b.- Cetak
c. - Geser posisi:
a = b,b = c.
Soal 9 Membalikkan Angka atau String
Bagaimana cara membalikkan urutan angka 1234 menjadi 4321 menggunakan pengulangan?
Pembahasan: Kita bisa menggunakan operasi modulo dan pembagian integer di dalam While Loop.
- Selama
angka > 0:- Ambil sisa bagi:
digit = angka % 10. - Cetak
digit. - Buang angka terakhir:
angka = angka / 10.
- Ambil sisa bagi:
Soal 10 Menghitung Rata Rata dari Sejumlah Data
Minta pengguna memasukkan jumlah data (N), lalu minta input data sebanyak N kali. Hitung rata ratanya.
Pembahasan: Gabungkan konsep penjumlahan dan pembagian.
total = 0.- Loop i dari 1 sampai N.
- Input
nilai, lalutotal = total + nilai. rata_rata = total / N.- Cetak
rata_rata.
Pentingnya Melatih Logika Pengulangan
Pengulangan adalah alat yang sangat kuat, namun programmer harus berhati hati terhadap Infinite Loop atau pengulangan tak berujung. Kondisi ini terjadi jika syarat berhenti pengulangan tidak pernah tercapai, sehingga program akan berjalan terus menerus dan bisa menyebabkan komputer hang atau crash.
Melalui kumpulan contoh soal di atas, pelajar diharapkan bisa melihat pola bagaimana data diproses secara iteratif. Cobalah untuk memodifikasi soal soal tersebut, misalnya mengubah segitiga bintang menjadi terbalik, atau menjumlahkan hanya angka ganjil dalam sebuah rentang.
Kesimpulan
Menguasai algoritma pengulangan adalah tiket masuk untuk memahami struktur data yang lebih kompleks seperti Array dan Linked List. Dengan sering berlatih soal soal essay maupun implementasi kode langsung, logika pemrograman Anda akan semakin tajam. Ingatlah bahwa kunci dalam pemrograman bukan pada seberapa cepat Anda menulis kode, melainkan seberapa efisien algoritma yang Anda bangun.
Semoga kumpulan contoh soal dan pembahasan ini bermanfaat bagi perjalanan belajar Anda di dunia pemrograman. Teruslah bereksperimen dan jangan takut menghadapi error, karena dari sanalah kemampuan problem solving Anda tumbuh.
Penulis:kiara salsabilla


Post Comment