PERINTAH
PENCABANGAN / STRUKTUR PEMILIHAN
Pada
beberapa kasus terkadang kita menginginkan komputer melakukan suatu aksi
tertentu bila suatu kondisi terpenuhi. Keberadaan perintah bersyarat pada suatu
program memberikan pencabangan proses seperti ditunjukkan oleh Error! Not a
valid link.. Bahasa Pascal menyediakan dua cara penyajian perintah bersyarat,
yaitu If…Then…Else dan Case…of. Pada prinsipnya pemilihan aksi dapat dikelompokkan
menjadi 3 bagian :
Pemilihan 1 pilihan/kasus. Gunakan perintah IF – THEN
Pemilihan 2 pilihan/kasus. Gunakan perintah IF – THEN – ELSE
Pemilihan N pilihan/kasus. Gunakan Case – of (Catatan sebenarnya dapat menggunakan if—then – else bersarang)
Pemilihan 2 pilihan/kasus. Gunakan perintah IF – THEN – ELSE
Pemilihan N pilihan/kasus. Gunakan Case – of (Catatan sebenarnya dapat menggunakan if—then – else bersarang)
I. IF…THEN…ELSE
1. IF … THEN … ELSE :
Pemilihan 2 kasus
Perintah
bersyarat If umumnya digunakan untuk melakukan pencabangan sederhana (antara 2
atau 3 cabang). Atau untuk pencabangan yang banyak, dimana kondisi yang menjadi
prasyaratnya melibatkan lebih dari satu parameter. Bentuk sintaks dari perintah
bersyarat ini adalah:
If <kondisi_pencabangan> then
Begin
… {aksi-1}
end
else
Begin
… {aksi-2}
end;
If <kondisi_pencabangan> then
Begin
… {aksi-1}
end
else
Begin
… {aksi-2}
end;
2. IF … THEN … ELSE :
Pemilihan N kasus
If
<kondisi_pencabangan1> then
Begin
… {aksi-1}
end
else
If <kondisi_pencabangan2> then
Begin
… {aksi-2}
end
else
Begin
… {aksi-3}
End;
Begin
… {aksi-1}
end
else
If <kondisi_pencabangan2> then
Begin
… {aksi-2}
end
else
Begin
… {aksi-3}
End;
II. CASE … OF … :
Pemilihan N kasus
Perintah
bersyarat Case umumnya digunakan untuk kondisi dengan banyak pencabangan.
Syarat pencabangan pada bentuk ini hanya boleh melibatkan satu buah parameter
dengan tipe data bukan Real. Pemeriksaan kondisi di sini lebih tepat disebutkan
dalam hubungan relasi samadengan (=). Dengan demikian bila parameter bernilai
tertentu maka dilakukan suatu aksi terkait, bila bernilai lain maka dilakukan
aksi yang lain juga, demikian seterusnya.
Case <Parameter> Of
<nilai_1> : <aksi_1> ;
<nilai_2> : <aksi_2> ;
…
<nilai_n> : <aksi_n> ;
Else <aksi_n+1> ;
End;
Case <Parameter> Of
<nilai_1> : <aksi_1> ;
<nilai_2> : <aksi_2> ;
…
<nilai_n> : <aksi_n> ;
Else <aksi_n+1> ;
End;
STRUKTUR PENGULANGAN
Dalam
menyelesaikan masalah, terkadang kita harus melaku suatu proses yang sama lebih
dari satu kali. Untuk itu perlu dibuat suatu algoritma pengulangan. Pascal
memberikan tiga alternatif pengulangan, yaitu dengan For, While, atau Repeat.
Masing-masing memiliki karakteristik, yang akan dipelajari pada modul ini. Ada
dua hal yang penting dalam melakukan merancang perintah pengulangan, yaitu:
• Inisialisasi awal.
• Nilai akhir pengulangan atau kondisi berhenti.
• Inisialisasi awal.
• Nilai akhir pengulangan atau kondisi berhenti.
FOR – TO – DO
Pada
pengulangan dengan For, inisialisasi awal dan kondisi akhir ditentukan dengan
menggunakan suatu variable kendali yang nilainya dibatasi dalam suatu range
tertentu. Sintaks untuk perintah ini adalah:
For <variable_kendali> := <nilai_awal> to <nilai_akhir> do
Begin
… {aksi}
End ;
atau
For <variable_kendali> := <nilai_awal> downto <nilai_akhir> do
Begin
… {aksi}
End ;
Perbedaan antara to dan downto adalah pada kondisi nilai awal dan akhir. Pada to: nilai awal lebih kecil dari nilai akhir, sedangkan pada downto nilai awal lebih besar dari nilai akhir. Perlu diingat, bahwa variable kendali harus dideklarasikan dengan tipe data integer.
Contoh program pengulangan menggunakan For-to-do:
procedure TfrmPengulangan.btnPengulanganClick(Sender: TObject);
var I : integer;
begin
lbxHasil.Items.Clear;
For I := 1 to 5 do
Begin
lbxHasil.Items.Add(inttoStr(i));
End;
Hasilnya adalah : 1, 2, 3, 4, 5
For <variable_kendali> := <nilai_awal> to <nilai_akhir> do
Begin
… {aksi}
End ;
atau
For <variable_kendali> := <nilai_awal> downto <nilai_akhir> do
Begin
… {aksi}
End ;
Perbedaan antara to dan downto adalah pada kondisi nilai awal dan akhir. Pada to: nilai awal lebih kecil dari nilai akhir, sedangkan pada downto nilai awal lebih besar dari nilai akhir. Perlu diingat, bahwa variable kendali harus dideklarasikan dengan tipe data integer.
Contoh program pengulangan menggunakan For-to-do:
procedure TfrmPengulangan.btnPengulanganClick(Sender: TObject);
var I : integer;
begin
lbxHasil.Items.Clear;
For I := 1 to 5 do
Begin
lbxHasil.Items.Add(inttoStr(i));
End;
Hasilnya adalah : 1, 2, 3, 4, 5
Contoh program yang sama jika tapa perintah tanpa
pengulanganL:
procedure TfrmPengulangan.btnPengulanganClick(Sender: TObject);
begin
lbxHasil.Items.Clear;
lbxHasil.Items.Add(inttoStr(1));
lbxHasil.Items.Add(inttoStr(2));
lbxHasil.Items.Add(inttoStr(3));
lbxHasil.Items.Add(inttoStr(4));
lbxHasil.Items.Add(inttoStr(5));
End;
Hasilnya adalah : 1, 2, 3, 4, 5
procedure TfrmPengulangan.btnPengulanganClick(Sender: TObject);
begin
lbxHasil.Items.Clear;
lbxHasil.Items.Add(inttoStr(1));
lbxHasil.Items.Add(inttoStr(2));
lbxHasil.Items.Add(inttoStr(3));
lbxHasil.Items.Add(inttoStr(4));
lbxHasil.Items.Add(inttoStr(5));
End;
Hasilnya adalah : 1, 2, 3, 4, 5
WHILE – DO
Pada
metoda pengulangan ini aksi hanya akan diproses bila kondisi pengulangan
terpenuhi, bentuk sintaks dari pengulangan ini adalah:
While <kondisi_ pengulangan> do
Begin
… {aksi}
End ;
While <kondisi_ pengulangan> do
Begin
… {aksi}
End ;
Selama
kondisi_pengulangan bernilai true maka aksi akan dilakukan, dan baru akan
berhenti setelah kondisi pengulangan bernilai false. Karena kondisi pengulangan
diperiksa pada bagian awal, maka ada kemungkinan aksi tidak pernah dilakukan,
yaitu bila kondisi pengulangan tidak pernah bernilai true. Contoh program
pengulangan menggunakan
While-do:
procedure TfrmPengulangan.btnPengulanganClick(Sender: TObject);
var I : integer;
begin
lbxHasil.Items.Clear;
I := 1;
While I<=5 DO
Begin
lbxHasil.Items.Add(inttoStr(i));
I := I + 1;
End;
End;
var I : integer;
begin
lbxHasil.Items.Clear;
I := 1;
While I<=5 DO
Begin
lbxHasil.Items.Add(inttoStr(i));
I := I + 1;
End;
End;
REPEAT – UNTIL
Metoda pengulangan ini juga melakukan pengulangan berdasarkan
pemeriksaan kondisi pengulangan. Hanya saja natur dari pengulangan ini adalah
sistem seakan-akan memaksa untuk melakukan pengulangan, sampai di ketahui
adanya kondisi berhenti. Bentuk sintaks dari pengulangan ini adalah:Repeat
… {aksi}
Until <kondisi_ berhenti>
Berlawanan dengan While, yang akan memproses aksi hanya bila kondisi_pengulangan bernilai true, pada pengulangan Repeat, sistem akan memproses aksi selama kondisi_berhenti bernilai false. Dengan demikian aksi pasti akan selalu diproses (minimal satu kali). Pada tipe ini, pengulangan dapat terjadi terus-menerus (tidak pernah berhenti), yaitu bila kondisi berhenti tidak pernah bernilai true. Contoh program pengulangan menggunakan Repeat- Until:
procedure TfrmPengulangan.btnPengulanganClick(Sender: TObject);
var I : integer;
begin
lbxHasil.Items.Clear;
I := 1;
Repeat
lbxHasil.Items.Add(inttoStr(i));
I := I + 1;
Until I > 5;
End;
Tidak ada komentar:
Posting Komentar