Tutorial Bahasa C/C++: Perulangan WHILE


image

Perulangan while memiliki sintaksis:

while (kondisi)
{
sub-program
}

yang artinya: Selama kondisi bernilai 1 (TRUE), maka kerjakan (eksekusi) sub-program yang ada di dalam tanda kurung kurawal. Perulangan akan berhenti ketika kondisi sudah tidak lagi bernilai 1 (FALSE). Dalam bahasa C, nilai 1 adalah TRUE dan nilai selain 1 adalah FALSE.

Mari kita perhatikan penggalan program berikut ini:

int x;
x = 2;
while (x<=10)
{
printf(“%5d”, x);
x = x + 2;
}
printf(“\n”);

Berikut ini adalah cara saya membaca penggalan program di atas. Bukan cara terbaik, tapi ini cara saya, mohon diterima saja. Hehehe…🙂

#1 – x sama-dengan 2 (variabel x diberi nilai awal 2)

#2 – Selama x kurang-dari atau sama-dengan 10 :

– tampilkan nilai x ke layar

– tambahkan nilai x dengan 2

– ulangi ke #2

image

Hasil program di atas adalah sebuah deret bilangan genap mulai dari 2 hingga 10. Gambar di samping adalah screenshot program perulangan while di atas hasil running menggunakan Ch. Ch adalah interpreter C/C++ yang dapat digunakan untuk membuat skrip dalam bahasa C/C++ sehingga kita dapat lebih cepat dan lebih mudah menguji program atau penggalan program. Oleh karenanya Ch sangat cocok untuk dipakai dalam proses belajar maupun mengajar pemrograman bahasa C/C++.

Terlihat pada tampilan bahwa nilai terakhir x adalah 12. Nilai 12 sudah tidak memenuhi kondisi kurang-dari sama-dengan 10 (x<=10), oleh karenanya perulangan while pun selesai dan eksekusi dilanjutkan pada baris perintah selanjutnya.

Contoh Program 2
Perhatikan penggalan program berikut ini:

int x, y;
x = 0; y = 0;
while (x<=10 && y<=x)
{
printf (“x=%d, y=%d\n”, x, y);
x = x+2;
y = 2*y + x%5;
}
printf (“Selesai. x=%d, y=%d\n”, x, y);

Perulangan while saya baca: “Selama nilai x kurang-dari sama-dengan 10 AND nilai y kurang-dari sama-dengan x, maka…

#1 – tampilkan x dan y
#2 – tambah nilai x dengan 2
#3 – y = dua-kali y ditambah sisa hasil bagi x dengan 5

Perhatikan bahwa kondisi perulangan while adalah sebuah persamaan logika dengan operator logika && (AND). Screenshot program 2 adalah sebagai berikut.

imagePada awal perulangan, nilai x=0 dan nilai y=0. Setelah menampilkan nilai x dan y ke layar, nilai x berubah menjadi 2 (x = 0 + 2) dan nilai y berubah menjadi 2 (y = 2*0 + 2 –> 2 adalah sisa hasil bagi 2 dibagi 5).

Karena kondisi x<=10 masih benar dan kondisi y<=x juga masih benar, maka perulangan pun berlanjut.

Program kembali menampilkan nilai x dan y, yakni x=2 dan y=2.

Selanjutnya, nilai x kembali diupdate menjadi 4 (x = 2 + 2 = 4) dan nilai y menjadi 8 (y = 2*2 + 4).

Perulangan pun dilanjutkan. Kondisi x<=10 masih bernilai 1 (benar), akan tetapi kondisi y<=x adalah salah karena nilai y sudah lebih besar dari x (y=8 dan x=4), oleh karenanya program tidak mengeksekusi sub-program dibawahnya melainkan keluar dari perulangan while dan melanjutkan ke baris perintah nomor 9: printf (“Selesai. x=%d, y=%d\n”, x, y);

Catatan!
Untuk perulangan

while (kondisi)
{
sub-program
}

dapat kita pahami secara mudah dengan membacanya sebagai

selama kondisi benar, eksekusi sub-program

Jadi perintah while(1) berarti perulangan tanpa-henti karena kondisinya selalu bernilai TRUE, dan perintah while(0), while(2), while(100), while(-1)  adalah perulangan yang tak pernah dieksekusi karena kondisi bernilai FALSE.

Semoga bermanfaat dan selamat belajar!

🙂

 

Tinggalkan Balasan

Isikan data di bawah atau klik salah satu ikon untuk log in:

Logo WordPress.com

You are commenting using your WordPress.com account. Logout / Ubah )

Gambar Twitter

You are commenting using your Twitter account. Logout / Ubah )

Foto Facebook

You are commenting using your Facebook account. Logout / Ubah )

Foto Google+

You are commenting using your Google+ account. Logout / Ubah )

Connecting to %s