Lompat ke konten Lompat ke sidebar Lompat ke footer

Seleksi Kondisi dan Pengulangan

Seleksi kondisi (Selection)

seleksi di dalam pascal digunakan untuk mengontrol jalannya program agar dapat dapat memilih salah satu dari sekian banyak pilihan yang ada. Pascal menyediakan
dua buah struktur seleksi antara lain:

If

Statement if berguna untuk memilih satu dari dua atau lebih kemungkinan yang ada. Jika statemen if tersebut terdiri dari 2 atau lebih pernyataan, maka pernyataan
tersebut harus berada diantara begin dan end.



Bentuk umum:
if dengan satu statemen
if <kondisi benar> then < do Statemen>

contoh:
if data< 10 then write(data);

if dengan banyak statemen
if<kondisi benar> then
begin
<do statemen1>
<do statemen2>
...

end;

Case

Case biasanya dipakai jika anda tidak hanya memilih diantara dua pilihan tetapi diantara banyak pilihan seperti berikut:

if hari='pagi' then
write('olahraga');
else if hari='siang' then
write('jalan-jalan');
else if hari='malam' then
write('makan');
else if hari='midnight' then
write('tidur');

... <statemen3_n>;
end;

<kondisi2>:
begin
<statemen2_1>;
<statemen2_2>;
... <statemen2_n>;
end;

contoh:
case karakter of
'a'..'z' : write ('anda menekan huruf');
1..100: begin
write('anda menekan angka');
end;

else
write('anda menekan tombol lain');
end;


Perulangan (Loop)

perulangan berguna untuk mengerjakan suatu statemen atau blok statemen secara berulang-ulang sebanyak yang anda inginkan. Perulangan banyak sekali dipakai dalam pembuatan program. Pascal menyediakan tiga buah struktur perulangan 
  • while .. do
  • repeat.. until
  • for.

Perulangan While .. do

Perulangan ini merupakan bentuk yang paling umum digunakan. Dengan menggunakan while .. do, kondisi yang diberikan terlebih dahulu diperiksa, jika memenuhi maka akan dikerjakan statemen yang ada.

Bentuk umum:
while .. do dengan satu statemen
while <kondisi benar> do <statemen>;

contoh:
while i<10 do writeln(i);

while dengan banyak statemen
while <kondisi benar> do
begin
<statemen1>
<statemen2>
<statemen3>
end;

contoh:
while i<10 do
begin
write(i);
i:= i+1;
end;

Perulangan repeat.. until

perulangan repeat..until biasanya dipakai jika sekurang-kurangnya baris perintah di dalamnya dikerjakan sebanyak satu kali. Hal ini disebabkan pemeriksaan kondisi pada perulangan repeat..until dilakuan pada akhir blok, sebaliknya while..do pemeriksaan kondisi dilakukan pada awal perulangan. Sehinga jika kondisi sudah tidak memenuhi maka baris-baris perintah di dalam while.. do tidak pernah dikerjakan.

Bentuk umum:
repeat
statemen1;
statemen2;
statemen3;
... until <kondisi benar>;

contoh
repeat
ch:=readkey;
write(ch);
until ch=#23;

Pengulangan for

pada perulangan for anda tidak dapat menentukan kondisi seperti while..do atau repeat..until. Namun, anda dapat menentukan sampai berapa kali perulangan harus dilakukan.

For digunakan untuk melakukan perulangan sebanyak yang anda tentukan mulai dari nilai awal sampai dengan nilai akhir yang anda berikan. Pendeklarasian for diikuti dengan nama variabel bertipe integer. Pada setiap perulangan, variabel tersebut akan bertambah satu (ascending) atau berkurang satu (descending).

Bentuk umum:

Ascending for satu statement
for <variabel> := <nilai awal> to <nilai akhir> do <statement>

banyak statement
for <variabel>:=<nilai awal> downto <nilai akhir> do
begin
<statement1>
<statement2>
<statement3>
end;

Descending for
for <variabel> := <nilai awal> downto <nilai akhir> do <statement>

Untuk banyak statement
for <variabel>:=<nilai awal> downto <nilai akhir> do
begin
<statement1>
<statement2>
<statement3>
end;

contoh:
for x:= 5 downto 0 do
begin
readln(nilai);
writeln('nilai anda',nilai);
end;