Delphi 7 - Kondisi Percabangan (If Then Else)
Pada postingan sebelumnya saya telah menjelaskan bahasa pemrograman Visual Basic (VB) yaitu mengenai kondisi percabangan, perulangan dan database. Sekarang saya akan menjelaskan bahasa pemrogramaan yang mirip dengan Visual Basic yaitu bahasa pemrograman Delphi 7. Delphi adalah bahasa pemrograman yang menggunakan visualisasi seperti bahasa pemrograman Visual Basic (VB), namun Delphi menggunakan bahasa yang hampir sama dengan Pascal (Object Pascal). Kali ini saya akan membuat aplikasi dari Delphi yaitu program percabangan.
Berikut adalah desain tampilan programnya :
Pada desain form1 diatas terdapat
3 buah label yaitu Login, Username, dan Password. Selanjutnya, terdapat 2 buah
Edit yang berfungsi sebagai tempat inputan user untuk mengetikan username dan
password yang sesuai agar dapat login dan masuk ke form2, lalu yang terakhir
ada 2 buah Button yaitu Login dan Cancel.
Pada desain form2 diatas terdapat
5 buah label yaitu Perhitungan Nilai, Nilai UTS, Nilai UAS, Nilai Anda, dan Grade.
Selanjutnya terdapat 4 buah Edit dan 3 buah Button yaitu reset, hitung, dan
exit. Berikut adalah kode program / sintaks yang
terdapat pada program tersebut :
pada UNIT1 :
procedure TForm1.Button1Click(Sender: TObject);
begin
if (edit1.text = 'ivan') and (edit2.text = '123') then
begin
Form1.Hide;
Form2.Show;
application.MessageBox('Selamat Datang','Welcome');
end
Else If (Edit1.Text = '') And (Edit2.Text = '') Then
begin
application.MessageBox
('Masukkan Username Dan Password Anda','Warning');
end
Else If Edit1.Text = '' Then
begin
application.MessageBox
('Masukkan Username Anda','Warning');
end
Else If Edit2.Text = '' Then
begin
application.MessageBox
('Masukkan Password Anda','Warning');
end
Else
label4.Caption := 'Maaf, Username dan Password Tidak Valid' ;
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Application.Terminate;
end;
end.
Penjelasan sintaks : (UNIT 1)
1. Button1 (Login)
procedure TForm1.Button1Click(Sender: TObject);
begin
if (edit1.text = 'ivan') and
(edit2.text = '123') then
begin
Form1.Hide;
Form2.Show;
application.MessageBox('Selamat Datang','Welcome’);
end
Else If (Edit1.Text = '') And (Edit2.Text = '') Then
begin
application.MessageBox
('Masukkan Username Dan Password Anda','Warning');
end
Else If Edit1.Text = '' Then
begin
application.MessageBox
('Masukkan Username Anda','Warning');
end
Else If Edit2.Text = '' Then
begin
application.MessageBox
('Masukkan Password Anda','Warning');
end
Else
label4.Caption := 'Maaf, Username dan Password Tidak Valid' ;
end;
begin
karena delphi menggunakan bahasa yang mirip dengan pascal, maka untuk memulai suatu sintaks harus dimulai dengan begin.
Sintaks diatas adalah bentuk percabangan pada delphi
If (Edit1.Text = 'ivan') AND
(Edit2.Text = '123') Then
berfungsi untuk menentukan kondisi percabangan If..Then..else
yaitu jika pada Edit1 oleh user diketikan ‘ivan’ dan pada Edit2 diketikan ‘123’
maka akan menjalankan
begin
Form1.Hide;
Form2.Show;
application.MessageBox('Selamat Datang','Warning');
end
yaitu menyembunyikan Form1 dan menampilkan Form2. Jika kedua
kondisi diatas tidak dipenuhi maka program akan menjalankan kondisi else if
dibawahnya
Else If (Edit1.Text = '') And (Edit2.Text = '') Then
begin
application.MessageBox
('Masukkan Username Dan Password Anda','Warning');
End
Kondisi diatas akan dijalankan jika user tidak mengisi pada
bagian Edit1 dan Edit2, maka akan tampil pesan melalui MessageBox
Else If Edit1.Text = '' Then
begin
application.MessageBox
('Masukkan Username Anda','Warning');
End
Kondisi diatas akan dijalankan jika user tidak mengisi pada
bagian Edit1 walaupun pada field Edit2 sudah terisi, maka akan tampil pesan
melalui MessageBox
Else If Edit2.Text = '' Then
begin
application.MessageBox
('Masukkan Password Anda','Warning');
end
Kondisi diatas akan dijalankan jika user tidak mengisi pada
bagian Edit2 walaupun pada field Edit1 sudah terisi, maka akan tampil pesan
melalui MessageBox
jika semua kondisi else if tidak terpenuhi maka program akan
menjalankan statement dibawah else
Else
label4.Caption := 'Maaf, Username dan Password Tidak Valid' ;
yaitu mencetak output pada
label4 yang berisi ‘Maaf, Username dan Password salah’.
Lalu yang terakhir ditutup dengan end; yang berfungsi mengakhiri sintaks pada bagian Button1 (Login)
2. Button2 (Cancel)
begin
Application.Terminate;
end;
Awal sintaks pada bagian Button2 diawali dengan begin dan
dibawahya terdapat perintah Application.Terminate;
yang berfungsi unutk menutup program dan diakhir ditutup dengan end; sebagai akhir dari sintaks pada
bagian Button2 (Cancel).
Yang terakhir end. Berfungsi
untuk menutup secara keseluruhan pada bagian Form1.
Untuk mengubah inputan yang keluar pada Edit2 (Password)
menjadi symbol “*” pada bagian propertis Edit2 > PasswordChar diubah dengan
“*”
Pada UNIT 2 :
procedure TForm2.Button1Click(Sender: TObject);
var
UTS,UAS,nilai : real;
Ket : String;
begin
UTS := strToInt (Edit1.text);
UAS := strToInt (Edit2.text);
nilai := (UTS+UAS)/2;
Edit3.text := floatToStr (nilai);
if (nilai >=75) and (nilai<=100) then
begin
Ket := 'Selamat! Anda LULUS' ;
end
else
begin
Ket := 'Maaf, Anda Tidak Lulus' ;
end;
Edit4.Text := ket;
end;
procedure TForm2.Button2Click(Sender: TObject);
begin
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Edit1.SetFocus;
end;
procedure TForm2.Button3Click(Sender: TObject);
begin
if application.MessageBox
('Yakin akan Keluar dari Program','Konfirmasi Ulang',MB_YesNo)=ID_Yes then
Application.Terminate;
end;
procedure TForm2.Edit1Change(Sender: TObject);
begin
Edit1.MaxLength := 2;
end;
procedure TForm2.Edit2Change(Sender: TObject);
begin
Edit2.MaxLength := 2;
end;
procedure TForm2.editAngkaKeyPress(Sender: TObject; var Key: Char);
begin
If Not (Key in['0'..'9',#8,#13]) Then
Key:= #0;
end;
procedure TForm2.editnomerKeyPress(Sender: TObject; var Key: Char);
begin
If Not (Key in['0'..'9',#8,#13]) Then
Key:= #0;
end;
end.
Penjelasan sintaks : (UNIT 2)
1. Button 1 (Hitung)
Pada bagian Unit2 yaitu untuk bagian Form2 dan Button1 (Hitung)
terdapat sintaks :
var
UTS,UAS,nilai
: real;
Ket
: String;
Yang berfungsi untuk membuat
serta mendeklarasikan variabel. Pada sintaks diatas dibuat variabel UTS, UAS,
nilai dengan jenisnya sebagai real atau sebagai angka desimal dan Ket sebagai
String atau jenisnya berupa kalimat atau kata. Untuk membuat dan
mendeklarasikan jenis tipe data pada variabel harus di tulis diatas begin dan
tidak perlu diawali dengan begin dan diakhiri end.
begin
UTS := strToInt (Edit1.text);
UAS := strToInt (Edit2.text);
nilai := (UTS+UAS)/2;
Edit3.text := floatToStr (nilai);
Lalu pada sintaks
selanjutnya diwalai dengan begin
untuk memulai suatu badan sintaks
UTS
:= strToInt (Edit1.text);
UAS
:= strToInt (Edit2.text);
berfungsi untuk mengubah
data dari string menjadi integer dan ditampung didalam Edit1 dan Edit2.
nilai
:= (UTS+UAS)/2;
berfungsi untuk melalukan
perhitungan nilai akhir yang didapat dengan menambahakan data UTS dan UAS
dibagi dengan 2.
Edit3.text
:= floatToStr (nilai);
Berfungsi untuk mencetak
output (nilai) pada Edit3 dengan mengubah data dari float menjadi string.
if
(nilai >=75) and (nilai<=100) then
begin
Ket := 'Selamat! Anda LULUS' ;
end
else
begin
Ket := 'Maaf, Anda Tidak Lulus' ;
end;
Edit4.Text
:= ket;
end;
Didalam bagian Button1
(Hitung) juga terdapat kondisi percabangan If..then..else untuk menentukan
lulus atau tidaknya melalui nilai yang diperoleh.
if
(nilai >=75) and (nilai<=100) then berfungsi untuk
memberi kondisi percabangan yaitu jika nilai lebih dari samadengan 75 dan
kurang dari samadengan 100
begin
Ket := 'Selamat! Anda LULUS' ;
end
maka pada variabel Ket akan
tercetak kalimat 'Selamat! Anda LULUS'
else
begin
Ket := 'Maaf, Anda Tidak Lulus' ;
end;
jika kedua kondisi tidak
terpenuhi maka program akan melakukan statement dibawah else yaitu mencetak
kalimat 'Maaf, Anda Tidak Lulus' pada
variabel Ket.
Edit4.Text
:= ket;
Berfungsi untuk melakukan
pencetakan nilai pada variabel ket pada Edit4
Lalu yang terakhir ditutup dengan end; yang berfungsi mengakhiri sintaks pada bagian Button1 (Hitung).
2. Lalu pada bagian Button2
(Reset) terdapat sintaks
begin
Berfungsi untuk memulai
sintaks pada bagian Button2 (Reset)
Edit1.Clear;
Edit2.Clear;
Edit3.Clear;
Edit4.Clear;
Yang berfungsi untuk
mengkosongkan field yang terdapat pada Edit1, Edit2, Edit3, dan Edit4
Edit1.SetFocus;
Berfungsi untuk menempatkan
kursor pada Edit1 setelah user mengklik Button2 (Reset)
end;
yang berfungsi untuk
mengakhiri sintaks yang terdapat pada Button2 (Reset)
3. Pada bagian Button3 (Exit)
terdapat sintaks
begin
if
application.MessageBox
('Yakin
akan Keluar dari Program?','Konfirmasi Ulang',MB_YesNo)=ID_Yes then
Application.Terminate;
end;
Berfungsi untuk menampilkan
sebuah MessageBox untuk meyakinkan kembali user apakah ingin benar keluar dari
program atau tidak dengan kondisi percabangan if..then dan terdapat pilihan Yes
atau No, Jika user mengklik ‘Yes’ maka statement dibawah then akan dijalankan
yaitu Application.Terminate; Yang
berfungsi untuk keluar dari jendela program. Tak lupa pada awal terdapat begin dan diakhir ditutup dengan end;
begin
Edit1.MaxLength := 2;
end;
Sintaks
diatas diketikan pada bagian Edit1 (UTS) yang berfungsi untuk memberi batasan
user dalam memasukan atau mengiput nilai yaitu hanya 2 digit angka.
begin
Edit2.MaxLength := 2;
end;
Sintaks
diatas diketikan pada bagian Edit2 (UAS) yang berfungsi untuk memberi batasan
user dalam memasukan atau mengiput nilai yaitu hanya 2 digit angka.
Berikut adalah tampilan
Outputnya :
Saya kira sudah cukup jelas penjelasan mengenai program percabangan (If Then Else) pada Delphi, semoga postingan ini bermanfaat dan menambah pengetahuan bagi kita dalam memahami bahasa pemrograman Delphi. Untuk postingan selanjutnya saya akan menjelaskan tentang contoh program kondisi perulangan bahasa pemrograman Delphi.
menambah ilmu tentang pemrograman Delphi 7, thanks for the information. Please visit
BalasHapusVisit us