Pernyataan
If dan Case
Statemen IF …..THEN….
Bentuk
struktur If….Then….. adalah sebagai berikut :
If Kondisi Then Statemen
Statemen ini digunakan untuk mengendalikan jalannya suatu
program berdasarkan
suatu
kondisi atau
syarat yang diberikan. Ungkapan adalah kondisi yang diseleksi oleh
statemen
If. Bila kondisi
yang diseleksi terpenuhi, maka statemen
yang mengikuti
Then
akan diproses, sebaliknya bila kondisi tidak terpenuhi, maka yang akan
diproses
statemen
berikutnya. Jika kondisi
bernilai benar (TRUE) maka statemen
akan
dikerjakan.
Jika kondisi bernilai salah maka (FALSE) maka statemen
tidak akan
dikerjakan.
Contoh
Program
Program
Lulus;
Uses
wincrt;
Var
Nilai : Real;
Begin
Write
('Jumlah Nilai :');
Readln
(nilai); {Pemasukan data}
If
nilai > 60 Then {seleksi kondisi variabel nilai}
Writeln('Lulus');
{Dilaksanakan jika nilai > 60}
Statemen IF.....THEN.....ELSE......
Bentuk
statemen IF...THEN...ELSE.... merupakan pengembangan dari struktur
IF.....THEN.......
Bentuk statemen tersebut adalah sebagai berikut :
1.
Bentuk Pertama
IF kondisi THEN
statemen1
ELSE
statemen2;
2.
Bentuk Kedua
If kondisi Then
Begin
......
......
End
Else
Begin
.......
.......
End;
Perintah ini berguna untuk memilih statemen mana yang akan dikerjakan
oleh
komputer
berdasarkan kondisi/syarat yang diberikan. Jika kondisi
bernilai benar (TRUE)
maka
statemen1 akan
dikerjakan. Jika kondisi bernilai salah maka (FALSE) maka
statemen2
yang akan dikerjakan.
Statemen1
dan statemen2
dapat berupa suatu blok statemen
tersendiri yang
diapit
oleh BEGIN...END seperti dalam bentuk kedua. di atas. Apabila kata ELSE
digunakan,
maka
statemen antara THEN dan ELSE tidak diakhiri dengan tanda titik koma(;). Jika
diakhiri
dengan tanda titik koma (;), maka statemen setelah kata ELSE tidak akan
dikerjakan
atau
penyeleksian kondisi akan berhenti pada statemen sebelum kata ELSE. Jika tidak
menggunakan
kata ELSE (bentuk statemen IF....THEN....) maka statemen setelah then
harus
diakhiri
dengan tanda titik koma (;).
Contoh
Program
Program Lulus1;
Uses
wincrt;
Var
Nilai : Real;
Begin
Write
('Jumlah Nilai :');
Readln
(nilai);
If
nilai > 60 Then
Writeln('Lulus')
Else
Writeln('Tidak
lulus')
End.
Statemen CASE
Statemen
Case mempunyai bentuk sebagai berikut
1. Bentuk Case…..Of
Case kondisi of
nilai1
: statemen1;
nilai2
: statemen2;
nilai3
: statemen3;
………………….
End;
2. Bentuk Case…..Of…Else…
Case
kondisi of
nilai1
: statemen1;
…………………
nilaiN
: statemenN;
Else
statemenLain;
End;
Struktur Case – Of mempunyai suatu ungkapan logika yang disebut dengan
selector
dan sejumlah statemen yang diawali dengan suatu label permasalahan (case label)
yang
mempunyai tipe sama dengan selector. Statement yang mempunyai case label yang
bernilai
sama dengan case label yang bernilai sama dengan nilai selector akan diproses
sedang
statemen
yang lainya tidak.
Nilai kondisi harus suatu kondisi yang nilainya berjenis
ordinal (dapat diurutkan).
Nilai1,
nilai2, dst dapat berupa sebuah nilai berjenis ordinal (sesuai dengan jenis
kondisi) atau
beberapa
nilai yang dapat dispisahkan dengan tanda titik koma.
Contoh
Program
Program nilai;
uses
wincrt;
Var
nilai : Char ;
Begin
Write
('Nilai Numerik yang didapat A,B,C,D atau :');
Readln
(nilai);
Case
nilai Of
'A'
: write('Sangat baik');
'B'
: write('Baik');
'C'
: write('Cukup');
'D'
: write('Kurang');
'E'
: write('Sangat kurang');
End;
End.
Dengan
menggunakan komputer, praktekkan beberapa contoh program dibawah ini :
1.
Program Maksimum;
uses
wincrt;
var
A, B, C : integer;
begin
writeln('Masukkan
tiga angka dengan spasi'); readln( A,B, C );
if
A >= B then
begin
if
A >= C then writeln( A,' adalah terbesar')
else
writeln(
C,' adalah terbesar')
end
else
if B >= C then writeln( B,' adalah terbesar') else
writeln(
C,' adalah terbesar')
end.
2.
Program Konversi_Waktu1;
Uses
WinCrt;
var
j,m,d,dm,sisa,sisa1:integer;
begin
Writeln('Program
Konversi Waktu 1');
Writeln('========================');
Writeln;
Write('Masukkan
Jumlah Detik : ');readln(dm);
if
(dm/3600)>0 then
begin
j:=dm
div 3600;
sisa:=dm-(j*3600);
end
else
begin
j:=0;
sisa:=dm;
end;
if
(sisa/60)>0 then
begin
m:=sisa
div 60;
sisa1:=sisa-(m*60);
end
else
begin
m:=0;
sisa1:=sisa;
end;
d:=sisa1;
Writeln;
Writeln('Hasil
=> ',j,' jam ',m,' menit ',d,' detik');
end.
Tidak ada komentar:
Posting Komentar