Penyeleksian Kondisi

Hampir setiap program yang kompleks mengandung suatu penyeleksian kondisi. Dengan menyeleksi suatu kondisi, program dapat menentukan tindakan apa yang harus dikerjakan, bergantung darihasil kondisi yang diseleksi tersebut. Untuk menyeleksi suatu kondisi,di dalam bahasa Pascal dapat dipergunakan pernyataan

IF
dan
CASE

1. Pernyataan IF

Struktur pernyataan
IF
dapat berupa
If—Then
atau
If—Then—Else
dengan
bentuk umum:
If
ungkapan
Then
pernyataan

Ungkapan adalah kondisi yang akan diseleksi oleh pernyataan If. Bila kondisi
yang diseleksi terpernuhi, maka pernyataan yang mengikuti Then akan diproses. Sebaliknya, bila kondisi tidak terpenuhi,maka yang akan diproses adalah pernyataan berikutnya.

Contoh:
Var
Nilai:ral;
Ket : string[11];
Begin
Ket:’Tidak Lulus’;
Write(‘Nilai Ujian = ‘);
Readln(Nilai);
{Penyeleksian kondisi}
If Nilai>60 Then Ket:=’Lulus’;
Writeln(Ket);
End.

Bila program dijalankan akan menghasilkan
Nilai Ujian = 70—–diisi melalui papan ketik
Lulus

If kondisi Then
pernyataan1;
Else
pernyataan2;

Pernyataan1 akan diproses apabila kondisi benarn(terpenuhi) sedang
pernyataan2 akan diproses apabila kondisi tidak terpenuhi.

Contoh:
Var
Nilai:Real;
Begin
Writeln(‘Nilai Ujian = ‘);
Readln(Nilai);
If Nilai>60 Then
Writeln(‘Lulus’);
Else
Writeln(‘Tidak Lulus’);
End.

2. Pernyataan Case

Pernyataan Case dapat berbentuk struktur
Case—Of
atau
Case—Of…. Else

Struktur Case—Of mempunyai suatu ungkapan logika yang disebut dengan selector dan sejumlah pernyataan yang diawali dengan suatu label permasalahan yang mempunyai tipe sama dengan selector. Pernyataan yang
mempunyai label permasalahan yang bernilai sama dengan nilai selector akan diproses sedang pernyataan yang lainnya tidak. Perberdaan dengan struktur

If adalah bila pernyataan
If menyeleksi suatu kondisi yang terpenuhi, setelah memproses pernyataan dalam lingkungan yang terpenuhi tersebut, proses penyeleksian masih dilakukan terhadap pernyataan If berikutnya yang lain. Sedang pada struktur
Case—Of bila salah satu kondisi terpenuhi dan pernyataan tersebut telah diproses, selanjutnya pernyataan-pernyataan yang lainnya dalam lingkungan
Case tidak akan diseleksi lagi.
Bentuk dari struktor Case—Of adalah:

Case
ungkapan
Of
daftar case-label1:pernyataan1;
daftar case-label2:pernyataan2;
daftar case-label3:pernyataan3;
daftar case-label4:pernyataan4;
.
.
daftar case-labeln:pernyataann;
End;

Daftar case label
(label permasalahan) dapat berupa konstanta, atau range (himpunan) dari konstanta yang bukan bertipe real.

Contoh:
Nilai ujian yang diberikan dalam bentuk huruf A, B,C, D, E mempunyai arti sebagai berikut.

Nilai ‘A’ berarti sangat baik.
Nilai ‘B’ berarti baik.
Nilai ‘C’ berarti cukup.
Nilai ‘D’ berarti kurang.
Nilai ‘E’ berarti kurang sekali.
Nilai ‘F’ berarti gagal.

Var
Nilai:Char;
Begin
Writeln(‘Nilai huruf yang didapat = ‘);
Readln(Nilai);
Case Nilai of
‘A’:Writeln(‘Sangat Baik’);
‘B’:writeln(‘Baik’);
‘C’:Writeln(‘Cukup’);
‘D’:Writeln(‘Kurang’);
‘E’:Writeln(‘Gaga’);
End;
End.

Struktur Case—Of…Else merupakan pengembangan dari struktur Case—Of dan juga merupakan pengembangan dari standar Pascal. Pada struktur Case—Of bila tidak ada kondisi yang terpenuhi berarti tidak ada pernyataandi lingkungan Case—Ofyang diproses. Dengan struktur Case—Of…Else, bila tidak ada kondisi yang terpenuhi, maka pernyataan yang akan diproses di
dalam lingkungan Case—Of adalah pernyataan yanga da di Else.

Contoh:
Pembelian yang mencapai nilai tertentu akan medapatkan potongan pembelian yang besarnya disesuaikan dengan tabel berikut ini.

Total Pembelian (Rp) —|Potongan Rp
0-1000 ———————-|100
1001-5000 —————–|200
>5000 ———————–|500

Akan dihitung besarnya potongan dan nilai yang harus dibayat untuk masing-masing penjualan. Programnya adalah:

Var
Bersih,Beli,potong:Integer;
Begin
Writeln(‘Total Pembelian = ‘); Readln(beli);
Case Beli of
0..1000:potong:=100;
1001..5000:potong:=200;
Else potong:=500;
End;
Bersih:=beli-ptong;
Writeln(‘Potongan = ‘, potongan);
Writeln(‘Jumlah Bersih = ‘, Bersih);
End.

sumber: Mengenal Turbo Pascal—Awan Sundiawan

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s