LOOPING DALAM PASCAL
A. PERULANGAN FOR-DO
Looping for-do digunakanuntukmengulang statement berulang kali sejumlah yang ditentukan.Bila terdapat lebih dari satu statement yang ada di dalam looping maka menggunakan begin...end;, jika hanya satu blok saja tidak perlu menggunakan begin...end;.
Ada 3 bentuk looping for-do yaitu for-do positif, for-do negatifdan for-do tersarang.
1. Looping Positif/Negatif
Looping positif adalah looping dari perhitungan kecil keperhitungan besar.
Sedangkan looping negatif kebalikan dari looping positif.Bentuknya sebagai berikut :
For var_int:= nilai_awalto nilai_akhirdo statement; (+)
For var_int:= nilai_awaldowntonilai_akhirdo statement; (-)
Var_int adalah variabel kontrol yang menentukan looping tersebut.Variabel
Kontrol harus bertipe sejenis integer. Example code :
Program looping_without_begin; uses wincrt;
var x:integer;
begin
For x:= 1 to 5 do writeln(‘Sixizgitulho..!!’);
end.
programlooping_with_begin; uses wincrt;
var x:integer;
begin
For x:= 5 downto 1 do
Begin
write(x);
writeln(‘ Sixizgitulho..!!’);
end;
end.
Output program looping_without_begin :
Sixizgitulho..!!
Sixizgitulho..!!
Sixizgitulho..!!
Sixizgitulho..!!
Sixizgitulho..!!
Output program looping_with_begin :
5 Sixizgitulho..!!
4 Sixizgitulho..!!
3 Sixizgitulho..!!
2 Sixizgitulho..!!
1 Sixizgitulho..!!
Coba perhatikan listing program berikut :
Program yang_mana_bukan_looping; uses wincrt;
var x:integer;
begin
For x:= 5 downto 1 do
write(x);
writeln(‘ Sixizgitulho..!!’);
end.
Outputnya adalah 54321 Sixizgitulho..!! Statement writeln(‘ Six...)
Tidak termasuk kedalam looping karena looping x berakhir pada satement write(x);.
Sekarang anda analisis output dari kedualsiting code program berikut.
Program mikir_donk; uses wincrt;
varx,y:byte;
begin
for x:= 10 downto 1 do y:=y+(x-1);
writeln(x);
end.
IV
Program perpangkatan; uses wincrt;
var x,x2,x3:integer;
begin
writeln(‘--------------‘);
writeln(‘ x x2 x3’);
writeln(‘--------------‘);
for x:= 1 to 10 do
begin
x2:=x*x;
x3:=x2*x;
writeln(x:3,x2:5,x3:6);
end;
end.
2. Looping For-Do Tersarang (Nested For)
Looping tersarang yaitu looping yang ada di dalam looping lainnya. Looping
Yang lebih dalam akan diproses terlebih dahulu hingga habis kemudian looping yang
Lebih luar bertambah atau berkurang dan memproses kembali looping yang paling
dalam. Untuk lebih jelasnya, perhatikan listing code program berikut :
program looping_tersarang;
useswincrt;
vari,j:integer;
begin
for i:= 1 to 2 do
begin
for j:=1 to 3 do
write(i,j,’ ‘);
writeln;
end;
end.
Biladicompile, maka outputnya :
11 12 13
21 22 23
Dengan digit/angka yang kiriadalahi
dan yang kanan adalahj. Bagaimana
bisa terjadi demikian?!??
Looping disamping bisa digambarkan
Seperti berikut :
Untuk i=1 è Untuk j=1 è write(i,j,’ ‘); = 11
Untuk j=2 è write(i,j,’ ‘); = 12
Untuk j=3 è write(i,j,’ ‘); = 13 writeln;
Untuk i=2 è Untuk j=1 è write(i,j,’ ‘); = 21
Untuk j=2 è write(i,j,’ ‘); = 22
Untuk j=3 è write(i,j,’ ‘); = 23 writeln;
Bingung khan..?!?? Cara kerja program diatas yaitu cabang looping harus
Didahulukan operasi loop-nya kemudian baru sub-nya. Looping tersebut berakhir
sampai sub dan cabang bernilai akhir.. Sekarang analisis kedua listing code berikut :
program triple_sum;
useswincrt;
vari,j,k:integer;
begin
for i:= 5 downto 1 do
begin
for j:=1 to 3 do
k:=k+(i+j);
writeln(k);
end;
end.
Program kombinasi;
useswincrt;
vari,j,k:integer;
begin
for i:= 1 to 3 do
for j:=3 downto 1 do
for k:=i to j do
writeln(i,j,k);
end.
makasih gan informasinya
ReplyDelete