Page 137 - Pemrograman Dasar kelas X
P. 137
Bab 4 Struktur Kontrol Perulangan 133
readln(n);
suku:=2;
While suku<=n do
suku:=suku*2;
suku:=suku/2;
writeln(‘suku ke- ‘, n,’ adalah : ’, suku);
end.
Misalkan n adalah 50, kita dapat menelusuri program di atas sebagai berikut.
Suku=2, periksa apakah suku<50? Ya, maka suku=suku*2=4
Suku=4, periksa apakah suku<50? Ya, maka suku=suku*2=8
Suku=8, periksa apakah suku<50? Ya, maka suku=suku*2=16
Suku=16, periksa apakah suku<50? Ya, maka suku=suku*2=32
Suku=32, periksa apakah suku<50? Ya, maka suku=suku*2=64
Suku=64, periksa apakah suku<50? STOP, lihat nilai terakhir suku adalah 64, karena ketika
suku=32, pasti masih tetap dikalikan 2, sehigga setelah iterasi berakhir maka perlu dibagi lagi
dengan 2.
Nested 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