1. Dasar teori
Pencabangan
adalah merupakan perintah yang dapat memberikan pilihan suatu kondisi, program
akan menjalankan perintah apabila suatu kondisi memenuhi syarat tertentu.
Pencabangan dapat dibedakan menjadi:
a) Pernyataan
If-Then-Else
Pernyataan bersyarat If-Then-Else digunakan untuk menjalankan suatu
pernyataan atau satu blok pernyataan, bila suatu nilai yang diuji terpenuhi.
Sintaks dari pada pernyataan if-then-else adalah sebagai berikut :
if <kondisi> then
<pernyataan>;
atau
if <kondisi> then
<pernyatan1>
else
<pernyataan2>;
Pada
penulisan diatas, <pernyataan1> dan <pernyataan2> tidak menggunakan
kata kunci begin dan end karena hanya satu pernyataan. Jika lebih dari satu
pernyataan maka harus menggunakan kata
kunci begin dan end. <Kondisi> adalah suatu ekspresi logika atau berupa
syarat yang akan diuji. Perintah If akan menguji ekspresi logika yang ada di
sebelah kanannya. Jika kondisi bernilai True maka akan dikerjakan
<pernyataan1>. Dan sebaliknya jika kondisi bernilai False maka akan
dikerjakan <pernyataan2>. Berikut ini beberapa
contoh penulisan If-Then-Else:
Var
NilAngka : Integer;
Status : String;
Begin
If NilAngka>=60 Then Status:=’Lulus’;
--
Contoh diatas menunjukkan jika variabel NilAngka mempunyai nilai lebih besar atau sama dengan 60 maka variabel Status
akan diisi dengan nilai ‘Lulus’.
Var
NilAngka : Integer;
Status : String;
Begin
If NilAngka>=60 Then Status:=’Lulus’
Else Status:=’Gagal’;
--
Contoh diatas menunjukkan jika variabel NilAngka mempunyai nilai lebih besar atau sama dengan 60 maka variabel Status
akan diisi dengan nilai ‘Lulus’, selain itu jika variabel NilAngka mempunyai nilai lebih kecil dari 60 maka variabel Status akan diisi
dengan nilai ‘Gagal’. Contoh diatas dapat ditulis dalam
bentuk lain seperti dibawah ini :
Var
NilAngka : Integer;
Status : String;
Begin
If NilAngka>=60 Then
Status:=’Lulus’
Else
Status:=’Gagal’;
--
Pada contoh diatas, pernyataan Status:=’Lulus’ tidak perlu diakhiri
dengan tanda titik koma. Bila anda menambahkan
titik koma, Delphi akan menampilkan pesan kesalahan. Bila pernyataan yang
dituliskan berupa blok pernyataan atau lebih dari satu pernyataan, anda harus
menggunakan kata kunci begin-end dan setiap pernyataan diakhiri titik koma.
b) Pernyataan
Case-Of
Pernyataan bersyarat case-of digunakan untuk menyederhanakan penggunaan
if-then-else yang terlalu panjang. Hanya saja pernyataan ini biasanya dipakai
untuk pemilihan dengan pilihan lebih dari dua. Sebagai contoh, anda dapat mengganti penulisan fungsi if-then-else menjadi lebih
ringkas dan lebih mudah dibaca dengan bentuk penulisan sebagai berikut :
If (NilAngka >= 85) and (NilAngka <= 100)
Then
NilHuruf
:=’A’
Else If
(NilAngka >= 70) and (NilAngka < 85) Then
NilHuruf
:=’B’
Else If
(NilAngka >= 60) and (NilAngka < 70) Then
NilHuruf
:=’C’
Else If
(NilAngka >= 55) and (NilAngka < 60) Then
NilHuruf
:=’D’
Else If
(NilAngka >= 0) and (NilAngka < 55) Then
NilHuruf
:=’E’
Else
NilHuruf
:=’’;
Dapat diubah menjadi :
Case NilAngka of
85..100 : NilHuruf
:=’A’;
70..84
: NilHuruf :=’B’;
60..69
: NilHuruf :=’C’;
55..59
: NilHuruf :=’D’;
0..54 : NilHuruf :=’E’;
Else NilHuruf :=’’;
End;
Sintaks dari pada pernyataan case-of adalah sebagai berikut :
Case <ekspresi> of
<daftar-1> : <pernyataan-1>;
<daftar-2> : <pernyataan-2>;
---
---
<daftar-n> :
<pernyataan-n>;
End;
atau dapat juga ditulis dengan bentuk :
Case <ekspresi> of
<daftar-1> : <pernyataan-1>;
<daftar-2> :
<pernyataan-2>;
---
---
<daftar-n> :
<pernyataan-n>;
else
<pernyataan-x>;
end;
<Ekspresi>
adalah suatu pernyataan bertipe ordinal (integer atau char). Program akan
menguji satu per satu <daftar> yang ada. Jika nilai <ekspresi>
adalah anggota dari <daftar> tertentu maka pernyataan pada <daftar>
tersebut akan dikerjakan. Pernyataan Else sifatnya optional. Jika digunakan
pernyataan Else dan tidak ada nilai <ekspresi> yang sesuai dengan
<daftar> yang ada, maka yang dijalankan adalah pernyataan yang ada di
bagian Else. Pada contoh diatas, bila variabel NilAngka berisi antara 85 s/d
100 maka variabel NilHuruf diisi dengan nilai A, tapi bila variabel NilAngka
berisi antara 70 s/d 84 maka variabel NilHuruf diisi dengan nilai B, demikian
seterusnya bila NilAngka berisi antara 0 s/d 54 maka NilHuruf diisi dengan E,
tetapi bila variabel NilAngka berisi selain dari 0 s/d 100 maka variabel
NilHuruf diisi dengan nilai kosong.
Contoh berikut ini adalah fungsi Case untuk menguji suatu subrange yang
berisi data Senin, Selasa, Rabu, Kamis, Jumat, Sabtu, dan Minggu :
Case Nilai of
Senin,Selasa : Hasil
:=’1’;
Rabu,Kamis : Hasil :=’2’;
Jumat,Sabtu : Hasil
:=’3’;
Minggu :
Hasil :=’4’;
End;
2. Praktikum
Buat project baru, desain seperti gambar 4.1
berikut:
Gambar 4.1 Tampilan Projek Percabangan |
Ubahlah properti setiap
komponen yang ada seperti pada tabel 4.1 berikut:
Tabel
4.1 Grade Nilai
Komponen |
Properti |
Value |
Form1 |
Caption |
Program Grade Nilai |
Height |
450 |
|
Name |
Form1 |
|
Width |
751 |
|
Label1 |
Caption |
PROGRAM PENENTUAN GRADE NILAI |
Name |
Label1 |
|
Label2 |
Caption |
Masukkan Nilai Anda |
Name |
Label2 |
|
Label3 |
Caption |
Grade Nilai |
Name |
Label3 |
|
Label4 |
Caption |
Label4 |
Name |
Label4 |
|
Label5 |
Caption |
Keterangan |
Name |
Label5 |
|
Label6 |
Caption |
Label6 |
Name |
Label6 |
|
Edit1 |
Text |
Kosongkan |
Name |
tnilai |
|
Button1 |
Caption |
Proses |
Name |
Button1 |
|
Button2 |
Caption |
Baru |
Name |
Button2 |
|
Button3 |
Caption |
Keluar |
Name |
Button3 |
Klik event OnClick atau double klik pada
button. Kemudian tambahkan kode berikut:
procedure TForm1.Button1Click(Sender:
TObject);
var
nilai:integer;
begin
nilai := strtoint(tnilai.Text);
If nilai > 85 then
begin
label4.Caption := 'A';
label6.Caption := 'SANGAT MEMUASKAN';
end
else
If nilai > 80 then
begin
label4.Caption := 'AB';
label6.Caption := 'MEMUASKAN';
end
else
If nilai > 75 then
begin
label4.Caption := 'B';
label6.Caption := 'Baik';
end
else
If nilai > 65 then
begin
label4.Caption := 'BC';
label6.Caption := 'Cukup Baik';
end
else
If nilai > 55 then
begin
label4.Caption := 'C';
label6.Caption := 'Cukup';
end
else
If nilai > 25 then
begin
label4.Caption := 'D';
label6.Caption := 'Kurang';
end
else
begin
label4.Caption := 'E';
label6.Caption := 'Gagal';
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
tnilai.Text := '';
Label4.Caption := '';
Label6.Caption := '';
tnilai.SetFocus;
end;
procedure TForm1.Button3Click(Sender:
TObject);
begin
Halt;
end;
3. Rangkuman
Pencabangan adalah merupakan perintah
yang dapat memberikan pilihan suatu kondisi, program akan menjalankan perintah
apabila suatu kondisi memenuhi syarat tertentu. Pencabangan dapat dibedakan
menjadi Pernyataan If-Then-Else dan
Pernyataan Case-Of
4. Tugas
Buatlah program untuk
menampilkan gaji pegawai dengan perhitungan berikut:
Tentukan bentuk form-nya, komponen yang digunakan serta input
yang diperlukan sehingga menghasilkan gaji pegawai sesuai dengan ketentuan |
Rekaman penggunaan pada delphi
Tidak ada komentar:
Posting Komentar
Silahkan Meninggalkan Pesan