STRUKTUR KONTROL Pertemuan Ke-7
WHILE…. DO Digunakan untuk melakukan proses perulangan suatu statemen terus menerus selama kondisi ungkapan logika pada while masih bernilai logika benar. Syntax : while <kondisi> do <pernyataan>; Contoh ; Var digit: integer; Begin digit := 1; while digit <= 20 do Write(digit); digit := digit + 1; End.
REPEAT… UNTIL Digunakan untuk mengulang statemen sampai kondisi yang diseleksi di Until tidak terpenuhi. Bentuk Umum : REPEAT statemen UNTIL ungkapan Contoh : Var I : integer; Begin I := 0; Repeat I := I + 1; Writeln(I); Until I = 5; End.
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).
FOR Digunakan untuk mengulang statemen berulang kali sejumlah yang ditentukan. Bentuk Umum : for <pencacah> := <awal> to <akhir> do<pernyataan>; Atau : for <pencacah> := <awal> downto <akhir> do <pernyataan>; Ket : Pencacah = variable kontrol Contoh 1: Var I : integer ; Begin For I : = 1 to 5 do Write ( I ) ; End; Writeln (‘Pascal’); End.
For bersarang Contoh 2 : Var I : integer ; Begin For I : = 5 down to 1 do Write ( I ) ; Writeln (‘Pascal’); End ; End. Perulangan yang berada didalam perulangan yang lainnya. Perulangan yang lebih dalam akan diproses lebih dulu sampai habis, kemudian perulangan yang lebih luar baru akan bertambah, mengerjakan perulangan yang lebih dalam lagi mulai dari nilai awalnya dan seterusnya. For bersarang
Contoh : Var I, J : integer ; Begin For I : = 1 to 5 do For J : = 1 to 3 do Write ( ‘Pascal’); Writeln ; End ; End.
Latihan 1. Var Celcius : integer; Fahrenheit : REAL; Begin WriteLn(‘---------------------------‘); WriteLn(‘Celcius Fahrenheit’); For Celcius := 5 DownTo 0 Do Fahrenheit := 1.8 * Celcius + 32; WriteLn(Celcius:8,Fahrenheit:14:2); End; WriteLn(‘----------------------------‘); End.
2. Var I : integer; Begin I := 0; While I < 5 Do WriteLn(I); I := I + 1; End; End.
Contoh Program while do Contoh Program Penghitung Faktorial
Output :
Listing Program var procedure Tfrmfaktorial.Button1Click(Sender: TObject); frmfaktorial: Tfrmfaktorial; begin bil,fak : Integer; close; end; end. procedure Tfrmfaktorial.bthitungClick(Sender: TObject); begin bil:=StrToInt(edbilangan.Text); fak:=bil; While bil<>1 do bil:=bil-1; fak:=fak*bil; end; edhasil.Text:=IntToStr(fak); end;
Contoh Program For Menghitung kuadrat bil. bulat
Listing Program var procedure Tfrmkuadrat.Button1Click(Sender: TObject); frmkuadrat: Tfrmkuadrat; begin bil,sqrbil,mulai,sampai:Integer; close; end; end. procedure Tfrmkuadrat.bthitungClick(Sender: TObject); begin lsbhasil.Items.Clear; mulai:=StrToInt(edmulai.Text); sampai:=StrToInt(edsampai.Text); for bil:=mulai to sampai do sqrbil:=sqr(bil); lsbhasil.Items.Add(IntToStr(bil)+'kuadrat='+IntToStr(sqrbil)); end;
TERIMA KASIH