Apa Itu Sequence, Conditional, dan Loop
SEQUENCE, CONDITONAL, LOOP
Di balik semua perangkat lunak yang kita gunakan setiap hari, ada kode yang dijalankan dengan segala macam istilah dan simbol. Anehnya, sering dapat dipecah menjadi tiga struktur pemrograman sederhana yang disebut urutan, pilihan, dan loop. Ini digabungkan bersama untuk membentuk instruksi dan algoritma paling dasar untuk semua jenis perangkat lunak.
1. Sequence
Urutan adalah serangkaian tindakan yang diselesaikan dalam urutan tertentu. Tindakan 1 dilakukan, kemudian Tindakan 2, kemudian Tindakan 3, dst., sampai semua tindakan dalam urutan telah dilakukan.
Urutan yang kita lakukan setiap hari adalah rutinitas pagi. Anda mungkin bangun, minum air, mandi, sarapan, dan sebagainya. Rutinitas setiap orang berbeda, tetapi semuanya terdiri dari serangkaian tindakan yang berbeda.
Dalam urutan, ada perkembangan linier pernyataan. Hasil dari satu pernyataan digunakan dalam pernyataan berikutnya. Berikut adalah beberapa tindakan kunci yang dilakukan dan kata-kata umum yang digunakan dalam pseudocode :
- Input: READ, OBTAIN, GET
- Output: PRINT, WRITE
- Compute: COMPUTE, CALCULATE, DETERMINE
- Initialize: SET, INITIALIZE
- Add one: INCREMENT
- Subtract one: DECREMENT
2. Conditional (Selection)
Pilihannya sedikit berbeda. Alih-alih mengikuti urutan peristiwa tertentu, mereka mengajukan pertanyaan untuk mencari tahu jalan mana yang harus diambil selanjutnya.
Katakanlah Anda pergi untuk menyikat gigi, dan Anda menemukan bahwa Anda kehabisan pasta gigi. Anda kemudian akan bertanya, "Apakah saya punya pasta gigi lagi?" Jika jawabannya tidak, maka Anda akan menambahkannya ke daftar belanja Anda. Tapi jika jawabannya ya, Anda cukup menggunakan pasta gigi saja. Ini benar-benar semua pilihan lakukan: menjawab pertanyaan berdasarkan apa yang ditemukannya.
Dalam pernyataan conditional, Anda membuat tes. Hasil tes adalah Boolean - Benar atau Salah. Jika hasil tesnya Benar Anda mengambil tindakan tertentu dan jika hasil tesnya Salah Anda mengambil tindakan lain.
IF condition THEN
sequence 1
ELSE
sequence 2
ENDIF
Jika kondisinya Benar, urutan 1 dieksekusi, jika tidak, urutan 2 dieksekusi. Urutan ELSE adalah opsional.
3. Loop
Misalnya, lakukan tindakan memalu paku. Meskipun Anda mungkin tidak menyadarinya, Anda terus-menerus bertanya pada diri sendiri, "Apakah paku sudah masuk sepenuhnya?" Ketika jawabannya tidak, Anda memukul paku lagi. Anda terus mengulangi pertanyaan ini sampai jawabannya ya, dan kemudian Anda berhenti. Loop memungkinkan pemrogram untuk membuat kode tugas berulang secara efisien daripada harus menulis tindakan yang sama berulang-ulang.
Ketiga struktur pemrograman ini mungkin tampak cukup sederhana, tetapi ketika digabungkan mereka dapat membuat beberapa perangkat lunak yang cukup rumit.
Jenis-Jenis Loop :
Loop adalah urutan yang dieksekusi beberapa kali. Eksekusi lengkap dari urutan disebut iterasi dari loop. Ada 2 jenis algoritma pengulangan yang umum ditemui dalam pemrograman, yakni algoritma pengulangan counted loop dan uncounted loop.
Algoritma pengulangan counted loop merupakan algoritma pengulangan yang bisa kita gunakan apabila kita sudah mengetahui berapa kali pengulangan yang dibutuhkan. Sementara itu, algoritma pengulangan uncounted loop merupakan algoritma pengulangan yang bisa kita gunakan ketika kita belum mengetahui berapa jumlah pengulangan yang dibutuhkan. Uncounted loop ini mungkin terdengar sedikit aneh, tetapi kita mungkin membutuhkannya pada kondisi-kondisi tertentu, seperti ketika pengulangan yang dilakukan terus bergantung pada input yang kita masukkan.
Algoritma pengulangan dalam pemrograman sendiri dapat diterapkan melalui beberapa struktur. Kali ini, kita akan mempelajari salah satu struktur pengulangan yang paling umum dijumpai dalam dunia pemrograman, yaitu struktur pengulangan for.
1. For
Struktur Pengulangan
Struktur pengulangan For merupakan struktur pengulangan yang paling umum dijumpai untuk melakukan counted loop. Berikut adalah struktur pengulangan For secara umum :
Parameter yang digunakan dalam pengulangan For bisa kita bagi menjadi 3 bagian, yakni bagian deklarasi ‘int i = 0’, ‘i < 5’, serta ‘i++’. Berikut adalah penjelasan untuk masing-masing bagian tersebut.
parameter pertama
Bagian ini merupakan bagian deklarasi variabel counter. Variabel counter ini diperlukan agar algoritma For bisa menelusuri berapa kali pengulangan yang dibutuhkan, berapa kali pengulangan yang sudah dilakukan, dan berapa kali pengulangan yang masih harus dilakukan.
Pada bagian deklarasi variabel counter ini, kamu dapat menentukan nama variabel counter-mu serta dari angka berapa pengulanganmu dimulai. Apabila kita melihat contoh di atas, variabel counter-nya dinamakan dengan ‘i’. Variabel i ini ditetapkan memiliki nilai 0, sehingga pengulangannya akan dimulai dari angka 0 juga.
Perlu dicatat bahwa parameter ini hanya bisa kamu isi dengan integer positif ya, teman-teman. Artinya, nilai minimal yang bisa kamu tetapkan untuk variabel counter kamu adalah 0. Sementara itu, nilai maksimal yang bisa kamu tetapkan untuk variabel counter ini tak terbatas. Kamu bisa menetapkan nilai 100, 5000, atau bahkan 70000 untuk variabel counter-mu.
parameter kedua
Setelah menentukan variabel counter yang akan kamu gunakan serta menentukan nilai awalnya, kamu tentunya harus menentukan berapa kali pengulangan yang kamu butuhkan. Bagian ini merupakan bagian yang sangat penting, karena For sendiri merupakan struktur pengulangan untuk counted loop. Jika kamu kesulitan untuk mengisi bagian ini, mungkin struktur pengulangan uncounted loop merupakan struktur yang lebih tepat untuk program pengulangan milikmu.
Melihat dari contoh di atas, tertulis bahwa ‘i < 5’. Hal ini menyatakan bahwa kita ingin pengulangannya terus terjadi selama i bernilai di bawah 5. Apakah hal ini sudah pasti bahwa i akan melakukan pengulangan sebanyak 5 kali? Tentu tidak ya, teman-teman. Selain kedua parameter ini, kita masih harus menentukan parameter terakhir yang dibutuhkan dalam pengulangan For.
Akan tetapi, sebelum melanjutkan ke parameter terakhir, kamu perlu mengetahui syntax apa saja yang bisa kamu masukkan ke dalam parameter kedua ini. Selain menggunakan syntax seperti ‘i < 5’, ‘i < 10’, atau ‘i < 50’, kamu juga bisa menggunakan beberapa operator lainnya. Kamu bisa menggunakan operator ‘<=’ untuk menyatakan ‘kurang dari atau sama dengan’, operator ‘>’ untuk menyatakan ‘lebih besar dari’, serta operator ‘>=’ untuk menyatakan ‘lebih besar atau sama dengan’.
Dengan begitu, parameter seperti ‘i > 5’, ‘i <= 15’, atau ‘i >= 100’ juga bisa kamu masukkan untuk parameter kedua ini ya, teman-teman.
parameter ketiga
Setelah mengisi 2 parameter sebelumnya, kini kita sudah mengetahui bahwa variabel counter kita akan dimulai dari 0 dan pengulangannya akan berhenti ketika variabel counter kita sudah bernilai 5. Pada awalnya, mungkin kamu akan menyangka bahwa alur pengulangannya akan seperti: pengulangan ke-0, pengulangan ke-1, pengulangan ke-2, pengulangan ke-3, dan pengulangan ke-4. Dengan begitu, kita akan melakukan 5 kali pengulangan.
Akan tetapi, kenyataannya belum tentu seperti demikian ya, teman-teman. Dari contoh di atas, pengulangan ke-0 sampai pengulangan ke-4 melambangkan nilai i yang bertambah 1 secara terus-menerus, sehingga nilainya bertambah dari 0 hingga 4. Namun, bagaimana jika kita bukannya menambahkan 1 ke nilai i, tetapi menambahkan 2? Pengulangannya akan menjadi pengulangan ke-0, pengulangan ke-2, dan pengulangan ke-4, bukan? Dengan begitu, kita hanya akan melakukan 3 kali pengulangan.
Nah, parameter ketiga ini lah yang menentukan bagaimana penambahan terhadap variabel counter kita dilakukan setiap kali looping terjadi. Kita bisa menambahkan 1 ke dalam variabel counter kita, atau bahkan menambahkan 10 ke dalam variabel counter kita setiap kali looping dijalankan. Tidak hanya menambahkannya, kita bahkan bisa mengurangi nilai variabel counter kita ketika kita menjalankannya.
Setelah mengisi setiap parameter yang ada, jangan lupa untuk mengisi bagian perintahnya dengan program kamu, ya! Contohnya, kamu bisa mengisi bagian perintahnya dengan program untuk mencetak ‘Hello World!’, program untuk mencetak tanda bintang (*), dan sebagainya. Jika sudah, maka program looping kamu dengan menggunakan algoritma pengulangan For sudah jadi deh!
2. While
Struktur Pengulangan
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 loop 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 loop while
Algoritma
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.
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:
penggunaan while untuk uncounted loop
3. Do-While
Algoritma
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 :
perbandingan while (kiri) vs do while (kanan)