Blogger Widgets

Senin, 17 November 2014

Pernyataan If dan Case


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