While Loop
Penulis: Sayed, Benedict, Polikarpus
Last updated
Penulis: Sayed, Benedict, Polikarpus
Last updated
While Loop memiliki satu tujuan yakni ia akan mengeksekusi codenya apabila suatu kondisi belum terpenuhi, dan akan berhenti tepat ketika kondisi terpenuhi. While loop memiliki dua bagian yakni kondisi dan potongan code. Sebagai contoh, apabila kita ingin mengeluarkan bilangan dari 0 hingga 10, kita dapat menuliskan code sebagai berikut:
Program ini akan mengeluarkan 012345678910
. Seperti nampak pada code, kondisi dituliskan di dalam tanda kurung dan potongan codenya di tulis di dalam dua buah kurung kurawal. Cara kerja program di atas sangat sederhana. Pertama-tama kita ingin melihat bahwa pada awalnya nilai x
10, karena nilainya tidak menyalahi kondisi maka perulangan akan dijalankan. Apabila pada awalnya nilai x
lebih besar dari 10 maka while loop akan diabaikan. Program akan terus mengulang perulangan hingga nilai x
tidak lagi kurang sama dengan 10, nilai x
akan terus ditambahkan atau diincrementkan pada potongon code while loop pada baris ke-8 tersebut.
Terkadang terdapat juga soal yang meminta Anda untuk menuliskan kasus uji (test case). Berikut adalah salah satu contoh dengan kasus uji:
DeskripsiPak Dengklek memberikan anda buah pertanyaan. Setiap pertanyaan berbunyi, “Berapakah hasil dari ?” Jawablah pertanyaan-pertanyaan tersebut.
Format MasukanBaris pertama berisi sebuah bilangan bulat . baris berikutnya masing-masing berisi sebuah bilangan bulat .
Format Keluaranbuah baris, masing-masing berisi bilangan bulat
Contoh Masukan
Contoh Keluaran
Soal tersebut dapat diselesaikan dengan melakukan perulangan untuk setiap kasus ujinya. Lalu untuk setiap kasus ujinya, kita akan menyelesaikan permasalahannya. Berikut adalah salah satu metode melakukan perulangan untuk tiap kasus uji dengan while loop:
Mengapa kita menggunakan while(T--)
? Hal itu dapat dijelaskan dengan proses berikut.
Mula-mula, nilai T
adalah 3, while(T--)
akan mengevaluasi nilai T
(yang dimana T
= 3) terlebih dahulu sebelum menurunkan nilai T
sebanyak 1. Angka 3 dalam int memiliki arti True dalam boolean. Sehingga, operasi loop di dalamnya pun mulai berjalan. Nilai T
= 2
Kemudian, while(T--)
akan mengevaluasi nilai 2 yang berarti True dalam boolean. Sehingga program di dalam loop pun berjalan. Nilai T
diturunkan 1 menjadi 1.
Pada loop ketiga, while(T--)
akan mengevaluasi nilai 1 yang juga berarti True, baru kemudian menurunkan nilainya sebesar 1. Sehingga loop pun berjalan dan T
diturunkan 1 menjadi 0.
Terakhir ketika nilai T
= 0, maka while(T--)
akan menyebut 0 = False dikarenakan angka 0 berarti False dalam boolean. Oleh karena itu, program berhenti dan kita berhasil melakukan loop sebanyak 3 kali
Hal ini berbeda apabila kita menggunakan while(--T)
karena while loop akan selalu mengevaluasi angka setelah nilai T
diturunkan. Sehingga, alih-alih melakukan perulangan sebanyak T
kali, loop akan melakukan perulangan sebanyak T-1
kali
mudah
Indonesia
mudah
Inggris
sedang
Indonesia
★