Algoritma pengulangan merupakan salah satu algoritma pemrograman dasar yang penting untuk dikuasai oleh para programmer. Pada artikel sebelumnya, kita sudah mempelajari cara menerapkan algoritma pengulangan pada program dengan menggunakan For Loop. Akan tetapi, For Loop bukan merupakan satu-satunya cara untuk menerapkan algoritma pengulangan. Selain menggunakan For Loop, algoritma pengulangan pada suatu program juga dapat diterapkan dengan menggunakan While.

Kira-kira, apa perbedaan While dengan For Loop? Apakah keduanya memiliki fungsi yang sama dan hanya memiliki perbedaan struktur? Atau mungkin keduanya memiliki fungsi dan cara kerja yang berbeda? Nah, tanpa berlama-lama lagi, yuk kita pelajari lebih lanjut tentang algoritma pengulangan menggunakan While!

Struktur Pengulangan While

Apabila kita melihat struktur pengulangan For Loop, kita dapat melihat bahwa parameter yang dibutuhkan oleh For Loop terdiri atas 3 bagian. Bagian pertama parameter For Loop digunakan untuk menetapkan nama dan nilai dari variabel counter. Parameter keduanya digunakan untuk menentukan nilai maksimal atau minimal dari variabel counter. Sementara itu, parameter ketiganya digunakan untuk menentukan berapa jumlah penambahan atau pengurangan variabel counter setiap kali pengulangan dijalankan.

Jika melihat dari kondisi di atas, maka parameter yang dibutuhkan oleh algoritma pengulangan While bisa dibilang cukup berbeda. Pasalnya, pada algoritma pengulangan While, hanya ada 1 parameter yang dibutuhkan, yakni nilai maksimal atau minimal dari variabel counter. Parameter ini merupakan parameter kedua yang diletakkan pada parameter For Loop. Lalu, kira-kira di mana kita meletakkan deklarasi nama dan nilai variabel counter? Di mana pula kita meletakkan jumlah penambahan atau pengurangan variabel counter setiap kali pengulangan dilakukan?

Parameter untuk pengulangan dengan While

Nama dan nilai variabel counter tentunya harus kita deklarasikan sebelum kita menggunakannya di dalam parameter algoritma While ya, teman-teman. Jika tidak, kita tidak akan bisa menggunakan variabel counter tersebut di dalam parameter While. Oleh karena itu, deklarasi nama dan nilai variabel counter ini harus kita letakkan sebelum struktur While kita tuliskan.

Deklarasi variabel counter

Dengan begitu, tersisa satu parameter lagi, yakni jumlah penambahan atau pengurangan variabel counter setiap kali pengulangan dijalankan. Seperti yang kita ketahui, perintah-perintah yang dituliskan di dalam struktur While adalah perintah-perintah yang kita inginkan untuk dieksekusi atau dijalankan secara berulang. Begitu pun penambahan atau pengurangan variabel counter, yang memang harus dijalankan setiap kali looping dijalankan. Oleh karena itu, bagian ini dapat kita letakkan di dalam struktur While, bersamaan dengan perintah lainnya yang dijalankan setiap kali pengulangan terjadi. Setelah mengetahui letak ketiga parameter tadi, inilah struktur akhir dari algoritma pengulangan While:

Struktur akhir pengulangan While

Algoritma Pengulangan While

Kita sudah membahas tentang counted dan uncounted loop pada artikel sebelumnya. Secara singkat, counted loop adalah algoritma pengulangan yang dapat digunakan apabila jumlah pengulangan yang diinginkan sudah diketahui dengan pasti. Sementara, uncounted loop dapat digunakan ketika jumlah pengulangan yang diinginkan belum dapat dipastikan.

Algoritma pengulangan While sendiri dapat digunakan untuk keduanya, baik untuk counted loop maupun uncounted loop. Struktur pengulangan While yang dibahas sebelumnya merupakan struktur umum untuk menggunakan While sebagai counted loop.

Algoritma pengulangan While untuk Counted Loop
Penggunaan While untuk Counted Loop

Dari struktur di atas, kita dapat melihat bahwa pengulangan akan terus dilakukan selama kondisi di dalam parameter While masih terpenuhi. Dalam kata lain, kondisi di dalam parameter While adalah kondisi yang memicu terjadinya pengulangan.

Dalam uncounted loop, kita tidak bisa mengetahui jumlah pasti pengulangan yang dibutuhkan. Meskipun begitu, pada umumnya kita sudah mengetahui kondisi yang bisa memicu terjadinya pengulangan. Contohnya, apabila kita hendak membuat suatu password, terkadang kita harus memenuhi jumlah minimal karakter yang ditentukan. Apabila jumlah minimal karakternya adalah 12 karakter, maka password kita tidak akan diterima jika panjangnya hanya 10 karaker. Jika kita memasukkan password yang hanya memiliki 10 karakter, program akan terus meminta kita untuk memasukkan password baru yang sesuai dengan ketentuan yang sudah ditetapkan.

Dari contoh di atas, kita tidak bisa menentukan berapa kali pengulangan akan dilakukan, bukan? Meskipun begitu, kita sudah mengetahui kondisi yang dapat memicu terjadinya pengulangan, yakni selama panjang password yang kita buat kurang dari 12 karakter.

Untuk menerapkannya ke dalam While, kita bisa mengisi parameter While dengan kondisi yang akan memicu terjadinya pengulangan, yakni apabila panjang password belum mencapai 12 karakter. Dengan begitu, potongan program uncounted loop kita akan terlihat seperti gambar di bawah ini:

Penggunaan While untuk program verifikasi password

Karena pengulangan pada contoh di atas didasarkan pada panjang password yang didapat dari input, maka kita harus mendeklarasikan variabel password sebelum kita gunakan di dalam struktur While, baik pada parameter maupun pada isi strukturnya. Akan tetapi, pada counted loop, kita menggunakan tipe data integer untuk variabel counter sehingga kita dapat menentukan jumlah penambahan atau pengurangannya. Padahal, pada uncounted loop seperti pada contoh di atas, variabel yang kita gunakan bukan merupakan integer yang bisa ditambah atau dikurangi, melainkan variabel berupa String untuk menampung password yang di-input.

Deklarasi variabel password sebelum digunakan

Selain itu, pengulangan kita pada uncounted loop juga bergantung hanya pada kondisi yang tertera pada parameter While, yakni selama password yang kita buat kurang dari 12 karakter. Oleh karena itu, kita tidak lagi memerlukan penambahan atau pengurangan variabel counter.

Dengan demikian, berikut adalah gambaran program uncounted loop dengan menggunakan algoritma pengulangan While, dituliskan dengan pseudocode:

Algoritma pengulangan While untuk Uncounted Loop
Penggunaan While untuk Uncounted Loop

Algoritma Pengulangan Do-While

Selain diterapkan menggunakan While, uncounted loop juga dapat diterapkan dengan perintah Do-While. Perintah ini hanya memiliki sedikit perbedaan dengan perintah While pada bagian logikanya. Pada perintah While, kita dapat memahaminya seperti, “Selama kondisi di dalam parameter terpenuhi, maka jalankan perintah di dalamnya.” Pada perintah Do-While, logikanya menjadi seperti, “Lakukan perintah yang diminta terlebih dahulu, kemudian cek apakah kondisi di dalam parameter masih terpenuhi. Jika masih terpenuhi, lanjutkan looping. Jika tidak, keluar dari looping.”

Dari ilustrasi di atas, dapat kita ketahui bahwa pengecekan kondisi pada While dilakukan di awal, sementara pengecekan kondisi pada Do-While dilakukan di akhir. Dengan begitu, pengulangan dengan menggunakan Do-While pasti menjalankan perintah di dalamnya minimal 1 kali. Sementara itu, pengulangan dengan menggunakan While bisa saja tidak menjalankan perintah di dalamnya sama sekali, karena memang kondisi untuk melakukan pengulangannya tidak terpenuhi dari awal.

Jika dilihat dari segi struktur, pengulangan Do-While memiliki struktur yang tidak jauh berbeda jika dibandingkan dengan pengulangan While. Berikut adalah perbandingan struktur penulisan While dan Do-while:

Algoritma pengulangan While dan Do-while
Perbandingan struktur While (kiri) dan Do-while (kanan)

Nah, itulah cara lainnya untuk menerapkan algoritma pengulangan pada program kita selain menggunakan For Loop. Dengan begitu, kita sudah mempelajari tentang struktur pengulangan For Loop, While, serta Do-while. Apabila kita terus mempelajari tentang algoritma pemrograman, kita tentunya akan sering berjumpa dengan kondisi-kondisi yang mengharuskan kita melakukan pengulangan. Akan tetapi, dengan adanya artikel dari Coding Studio, semoga kamu sudah bisa menentukan struktur pengulangan atau perintah yang sesuai untuk menerapkan pengulangan di program kamu ya.

Kalau kamu tertarik untuk mempelajari pemrograman-pemrograman dasar lainnya, jangan lupa untuk follow Instagram Coding Studio di sini ya! Selain mendapatkan update terbaru terkait artikel Coding Studio, kamu tentunya juga akan mendapatkan pengetahuan-pengetahuan lain seputar teknologi dari Instagram Coding Studio! Kami tunggu kehadiranmu!