Function (Fungsi) secara garis besar sama dengan procedure yang membedakannya adalah nama fungsi harus dideklarasikan dengan type datanya. Fungsi adalah suatu bagian program yang mengerjakan satu tugas dan hasilnya biasanya hanya satu. Fungsi juga menerima parameter-paramter seperti procedure yaitu Parameter Nilai dan Parameter Variabel. Selain itu fungsi juga diperbolehkan memiliki deklarasi lokal tersendiri.
Bentuk umum pendefinisian fungsi:
1.Function NamaFungsi(Parameter-Parameter) : Tipe Fungsi;2.Tipe Lokal3.Konstanta Lokal4.Variabel Lokal5.Sub Program Lokal (Fungsi/Prosedur)6.Begin7..................8.End;
Contoh Penulisan :
Function faktorial (var fak, hasil : I nteger) : integer;
Cara memanggil fungsi adalah dengan menuliskan nama fungsi beserta parameter-parameter yang diperlukan.
Parameter pada Fungsi
Sifat parameter dalam fungsi sama dengan sifat parameter dalam prosedur, yaitu bersifat lokal dan global.
Contoh program (parameter bersifat lokal)
Contoh program (parameter bersifat lokal)
01.Function Kali: Byte;02.Var03.A, B : Byte;04.Begin05.Write (‘Isi nilainya : ‘); Readln (A);06.B := A * A;07.End;08. 09.Begin10.Kali;11.Writeln (‘Nilai B = ‘, B);12.End.
Contoh program (parameter bersifat global)
01.Var02.A, B : Byte;03.Function Kali: Byte;04.Begin05.Write (‘Isi nilainya : ‘); Readln (A);06.B := A * A;07.End;08. 09.Begin10.Kali;11.Writeln (‘Nilai B = ‘, B);12.End.
Pemanggilan Fungsi
Parameter dalam fungsi (idem dengan prosedur), yaitu dapat dilakukan pemanggilan secara nilai (by Value) atau secara acuan (by reference)
Contoh program (by Value)
01.Function Hitung (X, Y, Z : Byte): Byte;02.Begin03.Z : = X + Y;04.Writeln (‘Nilai X = ‘, X);05.Writeln (‘Nilai Y = ‘, Y);06.Writeln (‘Nilai Z = ‘, Z);07.End;08. 09.Var10.A, B, C : Byte;11.Begin12.A := 5; B:= 7; C:=3;13.Hitung (A, B, C);14.Writeln (‘Nilai A = ‘,A,’Nilai B = ‘,B,’Nilai C = ‘,C);15.Readln;16.End.17. 18.<strong>Contoh program (by Reference)</strong>19. 20.Function Hitung (Var X, Y, Z : Byte): Byte;21.Begin22.Z : = X + Y;23.Writeln (‘Nilai X = ‘, X);24.Writeln (‘Nilai Y = ‘, Y);25.Writeln (‘Nilai Z = ‘, Z);26.End;27. 28.Var29.A, B, C : Byte;30.Begin31.A := 5; B:= 7; C:=3;32.Hitung (A, B, C);33.Writeln (‘Nilai A = ‘,A,’Nilai B = ‘,B,’Nilai C = ‘,C);34.Readln;35.End.
0 komentar:
Posting Komentar