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
   132   133   134   135   136   137   138   139   140   141   142