Memahami Perulangan Proses pada Algoritma dan Pemrograman
Mengulang suatu proses merupakan tindakan yang banyak dijumpai dalam pemrograman. Pengulangan proses atau looping adalah proses yang dilakukan secara berulang-ulang dalam batas yang telah ditentukan. Dalam pemrograman, pengulangan proses ditangani dengan mekanisme yang disebut loop. Pada semua bahasa pemrograman, pengulangan proses ditangani dengan suatu mekanisme yang disebut loop. Dengan menggunakan loop, suatu proses yang berulang misalnya menampilkan tulisan yang sama seratus kali pada layar dapat diimpelementasikan dengan kode program yang pendek.
Pernyataan pertama yang digunakan untuk keperluan pengulangan proses adalah pernyataan for. Bentuk pernyataan ini :
for (ungkapan1; ungkapan2; ungkapan3)
pernyataan;
Kegunaan dari masing-masing ungkapan pada pernyataan for.
· Ungkapan1 : digunakan untuk memberikan inisialisasi terhadap variabel pengendali
loop.
· Ungkapan2 : dipakai sebagai kondisi untuk keluar dari loop.
· Ungkapan3 : dipakai sebagai pengatur kenaikan nilai variabel pengendali loop. Ketiga ungkapan dalam for tersebut harus dipisahkan dengan tanda titik koma (;). Dalam hal ini pernyatan bisa berupa pernyataan tunggal maupun jamak. Jika pernyataannya berbentuk jamak, maka pernyataan-pernyataan tersebut harus diletakkan di antara kurung kurawal buka ({) dan kurung kurawal tutup (}), sehingga formatnya menjadi :
Baca juga: Pengantar Bahasa C dan Penulisan Program
for (ungkapan1; ungkapan2; ungkapan3)
{
pernyataan; pernyataan;
.
.
.
}
Untuk keperluan ini, pernyataan for yang digunakan berupa :
for (bilangan = 20; bilangan <= 100; bilangan += 10)
printf("%d\n", bilangan);
Pernyataan while
Pada pernyataan while, pengecekan terhadap loop dilakukan di bagian awal (sebelum tubuh loop). Lebih jelasnya, bentuk pernyataan while adalah sebagai berikut :
while (kondisi)
pernyataan;
dengan pernyataan dapat berupa pernyataan tunggal, pernyataan majemuk ataupun pernyataan kosong. Proses pengulangan terhadap pernyataan dijelaskan pada gambar berikut :
Gambar diatas tampak bahwa ada kemungkinan pernyataan yang merupakan tubuh loop tidak dijalankan sama sekali, yaitu kalau hasil pengujian kondisi while yang pertama kali ternyata bernilai salah.
Contoh pemakaian while misalnya untuk mengatur agar tombol yang ditekan oleh pemakai program berupa salah satu diantara 'Y','y', 'T' atau 't'.
Contoh:
#include <stdio.h> main()
{
char pilihan;
/* diberi nilai salah lebih dahulu */ int sudah_benar = 0;
printf("Pilihlah Y atau T.\n");
/* program dilanjutkan jika tombol Y,y,T atau t ditekan */ while(!sudah_benar)
{
pilihan = getchar(); /* baca tombol */ sudah_benar = (pilihan == 'Y') || (pilihan == 'y')||
(pilihan == 'T') || (pilihan == 't');
}
/* memberi keterangan tentang pilihan */ switch(pilihan)
{
case 'Y':
case 'y':
puts("\nPilihan anda adalah Y"); break;
case 'T':
case 't':
puts("\nPilihan anda adalah T");
}
}
Pernyataan do-while
do
pernyataan;
while (kondisi)
Pada pernyataan do-while, tubuh loop berupa pernyataan,dengan pernyataan bisa berupa pernyataan tunggal, pernyataan majemuk ataupun pernyataan kosong. Pada pernyataan do, mula-mula pernyataan dijalankan. Selanjutnya, kondisi diuji. Sendainya kondisi bernilai benar, maka pernyataan dijalankan lagi, kemudian kondisi diperiksa kembali, dan seterusnya. Kalau kondisi bernilai salah pada saat dites, maka pernyataan tidak dijalankan lagi. Untuk lebih jelasnya dapat dilihat pada Gambar 4.3. Berdasarkan Gambar 4.3 terlihat bahwa tubuh loop minimal akan dijalankan sekali.
Baca juga: Pengantar tentang Algoritma & FlowChart
Contoh: Program berikut memberikan contoh pemakaian do-while untuk mengatur penampilan tulisan "BAHASA C" sebanyak sepuluh kali.
Contoh:
i = 0;
do
{
puts("BAHASA C"); i++;
} while(i<10);
Pernyataan break.
Pernyataan break sesungguhnya telah diperkenalkan pada pernyataan switch. Pernyataan ini berfungsi untuk keluar dari loop for, do-while dan while. Sedangkan pada switch yaitu untuk menuju ke akhir (keluar dari) struktur switch. Sebagai contoh dapat dilihat pada gambar 4.4. Kalau pernyataan break dijalankan maka eksekusi akan dilanjutkan ke pernyataan yang terletak sesudah akhir tubuh loop for.
Jika pernyataan break berada dalam loop yang bertingkat (nested loop), maka pernyataan break hanya akan membuat proses keluar dari loop yang bersangkutan (tempat break dituliskan), bukan keluar dari semua loop.
Pernyataan Continue
Pernyataan continue digunakan untuk mengarahkan eksekusi ke iterasi (proses) berikutnya pada loop yang sama. Pada do-while dan while, pernyataan continue menyebabkan eksekusi menuju ke kondisi pengujian pengulangan, seperti yang dilukiskan pada Gambar 4.5. Pada loop for, pernyataan contunue menyebabkan bagian penaik variabel pengendali loop dikerjakan (ungkapan3 pada struktur for) dan kondisi untuk keluar dari loop for (ungkapan2 pada struktur for) diuji kembali.
Baca juga: Mengenal Perulangan FOR pada Algoritma dan Pemrograman
Program ini digunakan untuk memasukkan data harus diulangi dan hal ini dikendalikan dengan continue. Untuk mengakhiri pemasukan data, data yang dimasukkan harus bernilai kurang dari 0. Perlu diketahui kondisi bernilai 1.
Menyatakan bahwa kondisi selalu dianggap benar. Untuk keluar dari loop, pernyataan yang digunakan berupa break.
Contoh:
#include <stdio.h>
main()
{
int x;
for (x = 7; x <= 25; x += 2)
{
if (x == 15) continue;
printf("%4d", x);
}
printf("\n");
}
Contoh eksekusi :
7 9 11 13 17 19 21 23 25