PERNYATAAN BERSYARAT
Pernyataan bersyarat adalah pernyataan yang akan menjalankan pernyataan yang
mengikutinya sesuai dengan syarat tertertentu. Ada 2 buah pernyataan bersyarat, yaitu IF
dan CASE.
A. Pernyataan IF
Bentuk pernyataan IF:
IF <syarat logika> THEN <Pernyataan>;
Jika syarat logika bernilai Benar maka yang akan dijalankan adalah pernyataan yang
mengikuti THEN, dan sebaliknya jika syarat logika bernilai Salah maka yang akan
dijalankan adalah pernyataan yang mengikuti ELSE. Jika pernyataan yang mengikuti
THEN atau ELSE lebih dari satu maka harus diawali oleh Begin dan diakhiri oleh End.
Statement End sebelum ELSE tidak boleh ada tanda titik koma (;).
IF <syarat logika> THEN begin
<Pernyataan-11>;
<Pernyataan-12>;
.
.
<Pernyataan-1n>;
end
ELSE begin
<Pernyataan-21>;
<Pernyataan-22>;
.
.
<Pernyataan-2m>;
end;
Contoh :
Program untuk menentukan apakah suatu bilangan itu positif atau negatif.
Program bilangan;
Uses wincrt;
Var bil :integer;
Begin
Readln(bil);
If bil >= 0 Then writeln(’Positif’)
Else writeln (‘Negatif’)
End.
B. Pernyataan IF Bersarang (nested)
Jika ada dua pernyataan IF atau lebih, dimana pernyataan IF yang satu berada di dalam
pernyataan IF yang lain, maka pernyataan tersebut disebut Bersarang (nested).
Contoh bentuk pernyataan IF Bersarang:
IF <syarat logika-1> THEN <Pernyataan-1>
ELSE IF <syarat logika-2> THEN <Pernyataan-2>
ELSE IF <syarat logika-3> THEN <Pernyataan-3>
ElSE <Pernyataan-4>;
Contoh :
Program untuk menentukan bonus pegawai berdasarkan total penjualan. Kriteria bonus
adalah sebagai berikut:
Program bonus;
Uses wincrt;
Var Total :real;
Begin
Readln(Total);
If Total >= 500000 Then writeln(’Bonus = 30.000’)
Else If Total >= 250000 Then writeln(’Bonus = 20.000’)
Else If Total >= 50000 Then writeln(’Bonus = 10.000’)
Else writeln(’Tidak Ada Bonus’)
End.
C. Pernyataan CASE
Bentuk pernyataan CASE:
CASE <variabel-pemilih> OF
<daftar-label-1> : <Pernyataan-1>;
<daftar-label-2> : <Pernyataan-2>;
.
.
<daftar-label-n> : <Pernyataan-n>;
ELSE <Pernyataan-lain> ;
END;
Variabel pemilih tidak boleh bertipe real. Pernyataan yang akan dijalankan sesuai
dengan daftar-label yang memuat nilai variabel pemilih. Jika nilai dari variabel pemilih
tidak ada dalam semua daftar label, maka pernyataan yang akan dijalankan adalah
pernyataan yang mengikuti ELSE. ELSE dalam pernyataan CASE boleh tidak ada.
Sama halnya dengan pernyataan IF, Jika pernyataan yang mengikuti daftar-label lebih
dari satu maka harus diawali oleh Begin dan diakhiri oleh End.
Contoh :
1. Program untuk menentukan apakah suatu Character (huruf) yang kita masukkan
adalah huruf vokal atau bukan..
PROGRAM HURUF;
USES WINCRT;
VAR DATA:CHAR;
BEGIN
READLN(DATA);
CASE DATA OF
'A','I','U','E','O' :writeln('Huruf Besar Vokal');
'a','i','u','e','o' :writeln('Huruf Kecil Vokal');
ELSE writeln ('Bukan huruf Vokal');
END;
END.
Pernyataan bersyarat adalah pernyataan yang akan menjalankan pernyataan yang
mengikutinya sesuai dengan syarat tertertentu. Ada 2 buah pernyataan bersyarat, yaitu IF
dan CASE.
A. Pernyataan IF
Bentuk pernyataan IF:
IF <syarat logika> THEN <Pernyataan>;
Jika syarat logika bernilai Benar maka yang akan dijalankan adalah pernyataan yang
mengikuti THEN, dan sebaliknya jika syarat logika bernilai Salah maka yang akan
dijalankan adalah pernyataan yang mengikuti ELSE. Jika pernyataan yang mengikuti
THEN atau ELSE lebih dari satu maka harus diawali oleh Begin dan diakhiri oleh End.
Statement End sebelum ELSE tidak boleh ada tanda titik koma (;).
IF <syarat logika> THEN begin
<Pernyataan-11>;
<Pernyataan-12>;
.
.
<Pernyataan-1n>;
end
ELSE begin
<Pernyataan-21>;
<Pernyataan-22>;
.
.
<Pernyataan-2m>;
end;
Contoh :
Program untuk menentukan apakah suatu bilangan itu positif atau negatif.
Program bilangan;
Uses wincrt;
Var bil :integer;
Begin
Readln(bil);
If bil >= 0 Then writeln(’Positif’)
Else writeln (‘Negatif’)
End.
Jika ada dua pernyataan IF atau lebih, dimana pernyataan IF yang satu berada di dalam
pernyataan IF yang lain, maka pernyataan tersebut disebut Bersarang (nested).
Contoh bentuk pernyataan IF Bersarang:
IF <syarat logika-1> THEN <Pernyataan-1>
ELSE IF <syarat logika-2> THEN <Pernyataan-2>
ELSE IF <syarat logika-3> THEN <Pernyataan-3>
ElSE <Pernyataan-4>;
Contoh :
Program untuk menentukan bonus pegawai berdasarkan total penjualan. Kriteria bonus
adalah sebagai berikut:
Program bonus;
Uses wincrt;
Var Total :real;
Begin
Readln(Total);
If Total >= 500000 Then writeln(’Bonus = 30.000’)
Else If Total >= 250000 Then writeln(’Bonus = 20.000’)
Else If Total >= 50000 Then writeln(’Bonus = 10.000’)
Else writeln(’Tidak Ada Bonus’)
End.
C. Pernyataan CASE
Bentuk pernyataan CASE:
CASE <variabel-pemilih> OF
<daftar-label-1> : <Pernyataan-1>;
<daftar-label-2> : <Pernyataan-2>;
.
.
<daftar-label-n> : <Pernyataan-n>;
ELSE <Pernyataan-lain> ;
END;
Variabel pemilih tidak boleh bertipe real. Pernyataan yang akan dijalankan sesuai
dengan daftar-label yang memuat nilai variabel pemilih. Jika nilai dari variabel pemilih
tidak ada dalam semua daftar label, maka pernyataan yang akan dijalankan adalah
pernyataan yang mengikuti ELSE. ELSE dalam pernyataan CASE boleh tidak ada.
Sama halnya dengan pernyataan IF, Jika pernyataan yang mengikuti daftar-label lebih
dari satu maka harus diawali oleh Begin dan diakhiri oleh End.
Contoh :
1. Program untuk menentukan apakah suatu Character (huruf) yang kita masukkan
adalah huruf vokal atau bukan..
PROGRAM HURUF;
USES WINCRT;
VAR DATA:CHAR;
BEGIN
READLN(DATA);
CASE DATA OF
'A','I','U','E','O' :writeln('Huruf Besar Vokal');
'a','i','u','e','o' :writeln('Huruf Kecil Vokal');
ELSE writeln ('Bukan huruf Vokal');
END;
END.
|