05_object_pascal_konditional

Download Report

Transcript 05_object_pascal_konditional

Pemrograman Visual
Object Pascal : Kondisional, Aliran
Program dan Subrutin
1
Kondisional
- Inti dari sebuah program adalah bagaimana
mengambil keputusan berdasarkan masukan
yang ada
- Pengambilan keputusan dilakukan dengan
eksekusi kondisional
- Ada dua pernyataan kondisional di dalam
object Pascal, yaitu If-Then-Else dan CaseOf
2
If Then Else
- Pernyataan If-Then-Else mempunyai kondisi
(syarat)
- Jika syarat benar, akan dikerjakan
pemyataan-pemyataan di bagian Then.
Sebaliknya, jika syarat salah, dikerjakan
pernyataan-pemyataan di bagian Else
3
Contoh If Then Else
- Buatlah aplikasi baru, ubahlah caption pada
form dengan If Then Else
- Tambahkan komponen: 2 Label, 2 Edit dan 1
Button, Ubahlan captionnya sehingga nampak
seperti pada gambar
Label1
Label2
Button1
Edit1
Edit2
4
Kode If Then Else
- Klik 2x Event OnClick untuk Button1
- Ketikkan kode berikut
procedure TForm1.Button1Click(Sender:
TObject);
Var N : Integer;
begin
N := StrToInt(Edit1.Text);
if (N<17) then
Edit2.Text:='17 Tahun Kebawah'
else
Edit2.Text:='17 Tahun Keatas'
end;
5
Beberapa hal yang harus diperhatikan
- Pernyataan else tidak harus ada, pemberian
else tergantung kondisi
Misalkan
If expr
Then pernyataan
Artinya : Artinya bagian pernyataan akan
dijalankan jika expr bernilai benar dan jka
salah akan dilanjutkan program berikutnya
6
Beberapa hal yang harus diperhatikan
- Untuk pernyataan lebih dari satu baris harus
diawali dengan kata kunci begin, setiap baris
ditutup dengan titik koma (;) dan dibagian akhil
ditutup dengan kata kunci end
Contoh: If expr Then
Begin
xxxx;
xxxx:
end;
- Jika ada syarat lebih dari 1, maka tiap-tiap
syarat harus diapit oleh tanda kurung.
Contoh :
If (a=x) and (b=y) then
7
Case-Of
- Digunakan dalam kondisi yang tidak hanya
mempunyai 2 kemungkinan saja (benar atau
salah).
- Pemakaian
Case Variabel of
Nilai1,Nilai2 : ……
Nilai3..Nilai4 : ……
end;
8
Contoh Case-Of
- Buatlah aplikasi baru, ubahlah caption pada
form dengan Case Of
- Tambahkan komponen: 2 Label, 2 Edit dan 1
Button, Ubahlan captionnya sehingga nampak
seperti pada gambar
Label1
Label2
Button1
Edit1
Edit2
9
Kode Case Of
- Klik 2x Event OnClick untuk Button1
procedure TForm1.Button1Click(Sender: TObject);
Var Nilai : Integer;
begin
Nilai := StrToInt(Edit1.Text);
Case Nilai Of
0 : Edit2.Text:='Angka 0';
1..10 : Edit2.Text:='diantara 1 samapi 10';
11..20 : Edit2.Text:='diantara 11 samapi 20';
21..30 : Edit2.Text:='diantara 21 samapi 30';
31..100 : Edit2.Text:='diantara 31 samapi 100';
end;
10
end;
Yang harus diperhatikan
- Jika Anda memakai beberapa konstanta
dalam sebuah perbandingan, Anda harus
menggunakan koma dan memakai dua buah
titik untuk subrange
Contoh:
Case Nilai of
‘10’,’20’ : ……
‘50’..’100’ : ……
end;
11
Yang harus diperhatikan
- Konstanta yang dipakai tidak boleh
tumpang tindih (dipakai dua kali).
Contoh yang salah :
Case Nilai of
‘10’,’50’ : ……
‘50’..’100’ : ……
end;
12
Pengulangan
Ada tiga perintah dasar untuk melakukan
pengulangan.
- Repeat..Until
- While..Do
- For..Do
13
Repeat..Until
Peryataan-peryataan di antara repeat..until
akan dikerjakan sampai kondisi yang ada
setelah kata until terpenuhi
Pemakaian :
repeat
xxxxxx;
xxxxxx;
until (kondisi);
14
Contoh Repeat-Until
- Buatlah aplikasi baru, ubahlah caption pada
form dengan Repeat Until
- Tambahkan komponen: 1 Label, 1 Edit, 1
Button dan 1 Listbox. Ubahlan captionnya
sehingga nampak seperti pada gambar
Label1
ListBox1
Edit1
Button1
15
Kode Repeat-Until
- Klik 2x Event OnClick untuk Button1
procedure TForm1.Button1Click(Sender:
TObject);
var x:integer;
begin
x:=StrToInt(Edit1.Text);
ListBox1.Clear;
repeat
ListBox1.Items.Add (IntToStr (x));
x := x-1;
until (x<=0);
end;
16
While-Do
Peryataan-peryataan setelah do akan
dikerjakan sampai kondisi while terpenuhi
Pemakaian :
while (kondisi) do
Begin
xxxxxx;
xxxxxx;
End;
17
Perbedaan While..Do – Repeat..Until
- Peryataan kondisional diperiksa sebelum
masuk ke pernyataan pengulangan.
- Jika kondisinya salah pada mulanya,
pernyataan di dalam While..Do tidak akan
dikerjakan. Bandingkan dengan
Repeat..Until
18
Contoh While-Do
- Buatlah aplikasi baru, ubahlah caption pada
form dengan While_Do
- Tambahkan komponen: 1 Label, 1 Edit, 1
Button dan 1 Listbox. Ubahlan captionnya
sehingga nampak seperti pada gambar
Label1
Listbox1
Edit1
Button1
19
Kode While-Do
- Klik 2x Event OnClick untuk Button1
procedure TForm1.Button1Click(Sender:
TObject);
var x:integer;
begin
x:=StrToInt(Edit1.Text);
ListBox1.Clear;
while (x > 0) do
begin
ListBox1.Items.Add (IntToStr (x));
x := x-1;
end;
end;
20
For Do
Pengulangan For..Do adalah pengulangan
yang paling sederhana, karena kita
mengetahui berapa kali pengulangan
dilakukan
Pemakaian :
For kondisi1 to kondisi2 do
Begin
xxxxxx;
xxxxxx;
End;
21
Contoh For do
- Buatlah aplikasi baru, ubahlah caption pada
form dengan For Do
- Tambahkan komponen: 1 Label, 1 Edit, 1
Button dan 1 Listbox. Ubahlan captionnya
sehingga nampak seperti pada gambar
Listbox1
Label1
Edit1
Button1
22
Kode For Do
- Klik 2x Event OnClick untuk Button1
procedure TForm1.Button1Click(Sender:
TObject);
var x,y:integer;
begin
x:=StrToInt(Edit1.Text);
ListBox1.Clear;
For y:=1 to x do
ListBox1.Items.Add (IntToStr(y)+'
Pemrograman Visual');
end;
23
For Do Bersarang
Pengulangan For..Do bersarang adalah
Pengulangan yang berada dalam suatu
pengulangan
Pemakaian :
For kondisi1 to kondisi2 do
For kondisi3 to kondisi4 do
Begin
xxxxxx;
xxxxxx;
End;
24
Contoh For do Bersarang
- Buatlah aplikasi baru, ubahlah caption pada
form dengan For Do Bersarang
- Tambahkan komponen: 1 Label, 1 Edit, 1
Button dan 1 Listbox. Ubahlan captionnya
sehingga nampak seperti pada gambar
Listbox1
Label1
Edit1
Button1
25
Kode For Do Bersarang
- Klik 2x Event OnClick untuk Button1
procedure TForm1.Button1Click(Sender:
TObject);
var x,y,z:integer;
begin
x:=StrToInt(Edit1.Text);
ListBox1.Clear;
For y:=1 to x do
For z:=1 to 2 do
ListBox1.Items.Add (IntToStr(y)+'
'+IntToStr(z));
end;
26
Kode For Do Bersarang
For y:=1 to x do
For z:=1 to 2 do
ListBox1.Items.Add (IntToStr(y)+’ ‘+IntToStr(z));
Hasil misalnya x diisi angka 3:
1 1
1 2
2 1
2 2
3 1
3 2
27
Lat
Listing program lihat di buku mulai halaman 45
28
Latihan
1. Buatlah aplikasi yang hasilnya
berupa :
3
4
6
8
2
2. Buatlah aplikasi yang bisa
mengartikan Uang dalam rupiah
3
4
7
8
2
Misal :
3
5
6
8
2
100 : seratus rupiah
3
5
7
8
2
1000 : seribu rupiah
3
4
6
9
2
1510 : seribu lima ratus sepuluh
rupiah
3
4
7
9
2
3
5
6
9
2
3
5
7
9
2
29
Percabangan
- Percabangan dapat diartikan sebagai
lompatan atau melompat ke suatu tempat.
- Ada 5 perintah dasar untuk menangani
percabangan Goto, Break, Continue, Exit
dan Halt.
30
Go To
- Pernyataan Goto dipakai untuk melompat ke
sebuah baris yang telah diberi kata kunci
“label”.
Contoh aplikasi :
Edit1
Listbox1
Button1
31
Kode For Do
- Klik 2x Event OnClick untuk Button1
procedure TForm1.Button1Click(Sender:
TObject);
label lagi;
begin
lagi: ListBox1.Items.Add(Edit1.Text);
Edit1.Text:='Lagi ?';
if (Edit1.Text <> 'Lagi ?') then
goto lagi;
end;
32
Break
- Break digunakan untuk menghentikan suatu
pengulangan (loop).
Contoh aplikasi :
Label1
Listbox1
Edit1
Button1
33
Kode Break
procedure TForm1.Button1Click(Sender:
TObject);
var i,j,k:integer;
begin
k:=StrToInt(Edit1.Text);
ListBox1.Items.clear;
for i := 0 to k do
for j := 0 to 5 do
begin
if (j=2) then
break;
ListBox1.Items.Add(IntToStr(i));
end;
end;
34
Continue
- Contiue digunakan dalam kondisi untuk
memberhentikan sebuah iterasi dan
melanjutkan iterasi berikutnya
Contoh aplikasi :
Label1 &2
Listbox1
Edit1
Button1
35
Kode Continue
procedure TForm1.Button1Click(Sender:
TObject);
var i,k:integer;
begin
k:=StrToInt(Edit1.Text);
ListBox1.Items.clear;
for i := 0 to k do
begin
if ((i mod 3) > 0) then
continue;
ListBox1.Items.Add(IntToStr(i));
end;
end;
36
Exit
- Exit dipakai untuk mengakhiri blok program
yang sedang dikerjakan. Pemakaian Exit
hamir sama dengan break.
- bedanya break digunakan untuk
menghentikan pengulangan (loop)
sedangkan exit dipakai untuk menghentikan
program
37
Contoh Exit
Label1 &2
Listbox1
Edit1
Button1
38
Kode Exit
procedure TForm1.Button1Click(Sender:
TObject);
var i,k:integer;
begin
k:=StrToInt(Edit1.Text);
ListBox1.Items.clear;
for i := 1 to k do
begin
if (i > (k div 2)) then
exit;
ListBox1.Items.Add(IntToStr(i));
end;
end;
39
Procedure
- Procedure adalah bagian program yang
melaksanakan tugas tertentu pada saat
dipanggil dan kembali ke bagian
pemanggilnya .
Button1
Listbox1
40
Kode Procedure
type
TForm1 = class(TForm)
ListBox1: TListBox;
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
Procedure Tulis;
end;
var
Form1: TForm1;
implementation
41
{$R *.DFM}
Kode Procedure
Procedure TForm1.Tulis;
begin
ListBox1.Items.Add('------------------');
ListBox1.Items.Add('Pemrograman Visual');
ListBox1.Items.Add('------------------');
end;
procedure TForm1.Button1Click(Sender:
TObject);
begin
Tulis;
Tulis;
end;
42
Procedure Parameter Nilai
- Artinya Procedure hanya membutuhkan
pengiriman nilai, dan nilai tersebut diprogram
utama tidak akan berubah
Contoh :
Label1
Edit1
Button1
Listbox1
43
Kode Procedure Par. Nilai
public
procedure Garis(x:integer);
end;
*********
procedure TForm1.Garis(x:integer);
var i: integer;
begin
for i:=1 to x do
ListBox1.Items.Add(IntToStr(i)+' Parameter Nilai');
end;
procedure TForm1.Button1Click(Sender: TObject);
var y : integer;
begin
y:=StrToInt(Edit1.Text);
garis(y);
44
end;
Procedure Parameter Variabel
- Parameter yang dapat berubah sesuai
masukan dari program utama (pemanggil).
Artinya disini parameter variable akan
mengembaikan isi parameter ke
pemanggilnya .
Label1
Edit1
Button1
Listbox1
45
Kode Procedure
public
procedure nama(n:string);
end;
*************
procedure TForm1.nama(n:string);
begin
ListBox1.Items.Add(n);
end;
procedure TForm1.Button1Click(Sender:
TObject);
begin
nama(Edit1.Text);
end;
end.
46
Variabel Global dan Variabel local
Variabel global adalah variabel yang dapat
dipakai di seluruh program, di program utama
atau di dalam procedure.
Variabel lokal hanya dapat dipakai di tempat
pendefinisiannya. Jika variabel lokal didefinisikan
di dalam procedure, maka hanya procedure
tersebut yang mengenalnya
47
Contoh Variabel Global dan Variabel local
Buatlah aplikasi seperti gambar dibawah
Button1
Label1
Edit1
Label2
Edit2
48
Kode Variabel Global dan Variabel local
public
procedure tulis;
end;
var
Form1: TForm1;
vg : integer;
procedure TForm1.tulis;
var vl:integer;
begin
vl:=50;
Edit1.Text:=IntToStr(vg); Edit2.Text:=IntToStr(vl);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
vg:=100; tulis;
end;
49
end.
Function
Function hampir sama seperti procedure, hanya
saja function menghasilkan sebuah nilai.
Parameter nilai, parameter variabel, variabel
global dan variabel lokal dapat dipakai di dalam
function
Contoh :
50
public
function rata(a,b,c:integer):real;
end;
*********
function TForm1.rata(a,b,c:integer): real ;
var r:real;
begin
r:=(a+b+c)/3;
rata:=r;
end;
procedure TForm1.Button1Click(Sender: TObject);
var a,b,c :integer; na:real;
begin
a:=StrToInt(Edit1.Text);
b:=StrToInt(Edit2.Text);
c:=StrToInt(Edit3.Text);
na:=rata(a,b,c);
Edit4.Text:=FloatToStr(na);
end;
end.
51
Tugas
52