Struktur perulangan atau biasa disebut dengan looping digunakan untuk mengatur proses yang dijalankan secara berulang-ulang. Sehingga programmer tidak perlu menuliskan script nya secara berulang kali. Struktur kontrol perulangan mengijinkan kita untuk mengeksekusi sebuah statement atau sekelompok statement dalam jumlah yang banyak.
Struktur perulangan merupakan struktur yang tidak terpisahkan dengan algoritma dan pemrograman. Struktur perulangan memungkinkan program untuk melakukan serangkaian perintah secara berulang-ulang. Dan untuk memenuhi syarat bahwa algoritma harus finite (terbatas) maka dalam perulangan pasti ada titik pemberhentian. Jika ternyata dalam sebuah kasus perulangan tidak mencapai titik berhenti maka dapat dikatakan algoritma tersebut salah.
Titik pemberhentian dapat diberikan dengan beberapa cara, sebagai berikut.
1. Pemberhentian dengan syarat
Pemberhentian dengan syarat artinya ada sebuah kondisi yang akan menyebabkan perulangan berhenti. Pemberian syarat ini juga dapat dilakukan dengan dua cara, yaitu
a. Syarat diberikan di awal, di mana selama persayaratan dipenuhi maka dilakuakn serangkain perintah
b. Syarat diberikan di akhir, di mana proses akan diulang-ulang sampai syarat dipenuhi. Perbedaan antara a dan b adalah ketika syarat diberikan di awal, maka selama persayaratan itu dipenuhi , maka perulangan dilakukan. Jika kondisi sudah tidak dipenuhi maka berhenti. Sedangakan pada kasus syarat di akhir, dikerjakan serangkaian langkah. Setiap selesai rangkaian langkah diperiksa apakah kondisi sudah dicapai, jika belum maka proses diulangi lagi. Struktur yang sesuai dengan perulangan dengan kondisi di awal adalah struktur WHILE DO sedangkan untuk kondisi di akhir adalah dengan REPEAT UNTIL.
2. Pemberhentian dengan pencacah
Pemberhentian dengan pencacah, artinya dari awal sudah ditentukan bahwa perulangan akan dilakukan berapa kali. Pencacah ini juga ada dua macam cara, yaitu
a. Pencacah naik
Pemberhentian dengan pencacah naik artinya untuk suatu pencacah, misalkan i dari 1 sampai 100 lakukan rangkain langkah x. Artinya langkah tersebut akan diulangi sebanyak seratus kali. Dalam pascal untuk kasus pencacah naik digunakan struktur FOR TO DO.
b. Pencacah turun
Pemberhentian dengan pencacah turun , artinya sebaliknya untuk suatu pencacah i dari
100 sampai 1 lakukan rangkaian langkah x, artinya langkah x akan diulangi sebanyak seratus kali. Dalam pascal untuk kasus pencacah naik digunakan struktur FOR DOWNTO DO
Perulangan dengan struktur WHILE DO
Dalam berbagai bahasa Pascal dikenal struktur WHILE DO, yang berarti selama memenuhi kriteri/kondisi tertentu, maka dilakukan serangkaian proses. Struktur ini dapat diterapkan pada contoh di atas sebagai berikut.
WHILE (kondisi) DO Pernyataan;
Bentuk Umum:
WHILE (kondisi) DO Begin
Pernyataan1; Pernyataan2; Pernyataan3;
End;
Atau jika lebih dari satu pernyataan dapat dituliskan
Perhatikan Flow Diagram berikut:
Contoh 1
Kode program: program whileLoop;
var a: integer;
begin a := 10;
while a < 20 do begin
writeln(‘nilai dari a adalah: ', a);
a := a + 1;
end;
end.
Hasil:
nilai dari a adalah: 10
nilai dari a adalah: 11
nilai dari a adalah: 12
nilai dari a adalah: 13
nilai dari a adalah: 14
nilai dari a adalah: 15
nilai dari a adalah: 16
nilai dari a adalah: 17
nilai dari a adalah: 18
nilai dari a adalah: 19
Perulangan dengan struktur FOR DO
Perulangan dengan pencacah, yaitu menggunakan struktur FOR DO dimasukkan dalam pembahasan pada kegaiatan Belajar ini. Struktur ini digunakan untuk mengulang statement atau satu blok statement berulang kali sejumlah yang ditentukan.
Bentuk umum :
for nama_variabel := nilai_awal to nilai_akhir do {untuk pencacah naik} Pernyataan;
atau
for nama_variabel := nilai_awal downto nilai_akhir do {untuk pencacah turun} Pernyataan;
Untuk lebih jelasnya, perhatikan contoh kode program berikut, beserta hasilnya.
Contoh:
Program FORDO:
Var I : integer;
Begin
For I := 1 to 5 Do
Writeln(‘Pascal’);
End.
Output :
Pascal
Pascal
Pascal
Pascal
Pascal
Perulangan dengan strukturNested Loops (perulangan bersarang)
Dalam beberapa permasalahan sering dijumpai perulangan di dalam perulangan. Bisa menggunakan berbagai struktur WHILE DO atau FOR DO atau kombinasi dari struktur perulangan yang berbeda-beda.
for variabel1:=nilai_awal1 to [downto] nilai_akhir1 do begin
for variabel2:=nilai_awal2 to [downto] nilai_akhir2 do begin
statement; end;
end;
Sedangkan bentuk umum untuk perulangan bersarang WHILE DO adalah sebagai berikut
while(kondisi1)do
begin
while(kondisi2) do
begin
statement(s);
end;
statement(s);
end;
Untuk lebih jelasnya, perhatikan contoh kode program berikut, beserta dengan hasilnya.
program NestedLoops; {* contoh aplikasi mencari nilai prima *}
var i,j : integer;
begin
for i := 1 to 5 do
begin
for j := 1 to i do
write('*');
writeln;
end;
end.
Output:
*
**
***
****
*****
Perulangan Dengan Repeat Until
Digunakan untuk mengulang (repeat) statement atau blok statement sampai (until) kondisi yang diseleksi di Until tidak terpenuhi.
Bentuk Umum :
REPEAT
Pernyataan;
UNTIL (kondisi)
Coba perhatikan flow diagram berikut ini
Untuk lebih jelasnya, perhatikan contoh kode program berikut, beserta dengan hasilnya. Contoh 1.
Kode Program:
Var digit : = 1;
begin
repeat
writeln (digit);
digit := digit + 1
until digit > 5 ;
end.
Output:
1
2
3
4
5
Kapan kita akan menggunakan Perulangan dengan kondisi di awal, dalam hal ini adalah WHILE DO dengan Perulangan dengan kondisi di akhir yaitu REPEAT UNTIL, adalah Perbedaan antara struktur REPEAT-UNTIL dengan WHILE-DO adalah sebagai berikut :
Paling sedikit statement-statement di dalam perulangan REPEAT-UNTIL diproses sekali, karena seleksi kondisi ada pada statement Until yang terletak dibawah. Sedang pada struktur WHILE-DO paling sedikit dikerjakan nol kali, karena seleksi kondisi ada pada statement While yang terletak diatas, sehingga kalau kondisi sudah tidak terpenuhi, maka tidak akan masuk ke dalam lingkungan perulangan.
Pada REPEAT-UNTIL dapat tidak dipergunakan blok statement (tidak diperlukan Begin dan End untuk menunjukkan batas perulangannya), karena batas perulangannya sudah ditunjukkan oleh Repeat sampai dengan Until (Repeat dan Until sebagai pengganti Begin dan End).
Penggunaan Break dan Continue
BREAK
Pernyataan BREAK di dalam Pascal memiliki 2 buah kegunaan, yaitu
1. Pernyataan break yang ditemukan di dalam sebuah perulangan, otomatis akan menghentikan kontrol perulangan tersebut dan kontrol program selanjutnya akan dilanjutkan pada pernyataan setelah perulangan
2. Pernyataan break juga dapat digunakan untuk menghentikan pernyataan case of yang sudah dibahas pada bab sebelumnya
Bentuk umum:
If (kondisi)
Break;
Coba perhatikan flow diagram berikut, yaitu penggunaan break pada struktur WHILE DO.
CONTINUE
Pernyataan continue di dalam Pascal bekerja seperti halnya pernyataan break. Break digunakan untuk menghentikan secara paksa sebuah proses, tetapi continue secara paksa akan melanjutkan perulangan selanjutnya, dan mengabaikan kode-kode diantara keduanya. Bentuk umum:
Continue;
Coba perhatikan flow diagram berikut, yaitu penggunaan continue pada struktur repeat until.
Comments