Dalam sebuah program, seringkali
pemrogram perlu memecah persoalaan yang kompleks menjadi beberapa bagian yang
lebih mudah di selesaikan, ide inilah yang mencetuskan struktur pemrograman
modular, yaitu memecah persoalan menjadi sub-sub persoalan yang biasa di sebut subprogram
atau rutinprogram.
Dalam pemrograman ,di kenal dua
type subprogram yang biasa di gunakan untuk memecah persoalan yang kompleks
menjadi lebih sederhana, yaitu fungsi (function) dan prosedur (procedure).
Kedua type subprogram ini dapat di gunakan bersamaan atau salah satunya saja
dalam sebuah program. Masing-masing
type subprogram memiliki karakteristik dan perilaku yanag berbeda sehingga
penggunaanya dalam program juga berbeda-beda.
A. Procedure
Procedure
adalah suatu program terpisah dalam bentuk blok sendiri yang berfungsi sebagai
sub-program (modul program) yang merupakan sebuah program kecil untuk memproses
sebagian dari pekerjaan program utama.
Procedure berguna untuk
mengumpulkan statement-statement yang dapat di jalankan menjadi satu dalam blok
dan untuk menjalankan kembali hanya dengan menuliskan nama procedure yang
menampungnya.
Untuk mendeklarasikan
procedure dapat di lakukan dengan dua cara :
Header
procedure tanpa parametere
Penulisannyaa di awali
dengan kataa baku procedure dan diikuti dengan nama procedure serta di akhiri
dengan tanda titik koma (;)
Bentuk Umum :
Procedure
Contoh
Procedure kelompok;
Procedure lima;
Contoh
penggunaan procedure tanpa parameter.
program contoh;
uses wincrt;
var
kol,bar,has1,has2:integer;
procedure tabel;
begin
has1:=kol+bar;
has2:=kol*bar;
writeln(' kolom + baris
= ' ,has1);
writeln(' kolom + baris
= ' ,has2);
end;
begin
gotoXY(21,1);
writeln('_________________________');
gotoXY(21,2);
writeln('______program coba_______');
gotoXY(21,3);
writeln('______ _______');
gotoXY(21,4);
writeln('_________________________');
write ('masukan jumlah
kolom = ');readln(kol);
write ('masukan jumlah
baris = ');readln(bar);
tabel;
end.
Header
procedure dengan parameter
Penulisannya hampir sama
dengan procedure tanpa parameter yaitu di awali dengan kata baku procedure,
lalu diikuti dengan parameter-parameter (yang berada dalam kurung) yang maasing
masing dipisahkan dengan titik dua(:) serta di akhiri dengan tanda titik
koma(;).
Bentuk Umum:
Procedure ();
Contoh
Procedure
kelompok(nim:integer; nama:string);
Procedure krs(ip,ipk
:reaal);
Contoh
penggunaan procedure dengan parameter.
uses wincrt;
var
kol,bar,has1,has2:integer;
procedure
tabel(a,b:integer);
begin
has1:=kol+bar;
has2:=kol*bar;
writeln(' kolom + baris
= ' ,has1);
writeln(' kolom + baris
= ' ,has2);
end;
begin
gotoXY(21,1);
writeln('_________________________');
gotoXY(21,2);
writeln('______program coba_______');
gotoXY(21,3);
writeln('______ _______');
gotoXY(21,4);
writeln('_________________________');
write ('masukan jumlah
kolom = ');readln(kol);
write ('masukan jumlah
baris = ');readln(bar);
tabel(kol,bar);
end.
Variabel
local dan Variabel Global
Variabel local adalah variabel yang hanya dapat di kenali pada sebuah
procedure atau function.
Variabel Global adalah variabel yang hanya dapat di kenali baik pada
program utama dan pada procedure maupun function.
B. Function
Blok fungsi hampir sama dengan
blok procedure, hanya fungsi harus dideklarasikan dengan typenya atau jenis
hasilnya. Type deklarasi ini menunjukkan type hasil dari fungsi.
Pada bahasa pascal dikenal
beberapa fungsi, misalkan : abs, pred, sqrt, sqr, succ dan sebagainya
fungsi-fungsi tersebut biasanya dikenal dengan built in functio.
Berbeda dengan procedure ,
function merupakan modul program yang menghasilkan suatu kuantitas. Hal ini
dapat di lihat dari bentuk headernya yang menyebutkan jenis data dari kuantitas
yang di hasilkan.
Secara umum bentuk header suatu function adalah :
FUNCTION nama: jenis hasil;
Atau
FUNCTION nama (formal parameter: jenis):jenis_hasil;
Untuk mendeklarasikan
procedure ada dua cara:
1.Header fungsi tanpa
parameter
2.Header fungsi dengan
parameter
Header
fungsi tanpa parameter
Header fungsi tanpa
parameter selau di awali dengan kata baku function dan di ikuti dengan nama
function serrta type datanya yang dipisahkan dengan tanda titik dua (:).
Bentuk umum :
Function :TypeData;
Contoh penulisan Function tanpa parameter
Function IP:integer;
Function Nama:String;
Contoh
penggunaan fungsi tanpa parameter
program contoh;
uses wincrt;
var jmlnlmk,jmlsks:real;
function ip:real;
begin
ip:=jmlnlmk /jmlsks;
end;
begin
gotoXY(21,1);
writeln('_________________________');
gotoXY(21,2);
writeln('______program coba_______');
gotoXY(21,3);
writeln('______ _______');
gotoXY(21,4);
writeln('_________________________');
write ('masukan jumlah
nilai MK = ');readln(jmlnlmk);
write ('masukan jumlah
SKS = ');readln(jmlsks);
writeln('IP anda adalah
= ' ,ip:2:2);
end.
Header
fungsi dengan parameter
Header fungsi dengan
parameter tidak jauh beda dengan penulisan function tanpa parameter, hanya saja
perlu di tambahkan parameter.
Parameter yang di tulis didalam kurung ().
Bentuk umum :
Function
():typedata;
Contoh penulisan
Function
CetakIP(sks,ip,mk:byte):real;
Contoh penggunaan fungsi
dengan parameter
program contoh;
uses wincrt;
var jmlnlmk,jmlsks:real;
function
ip(jmlnlmk,jmlsks:real):real;
begin
ip:=jmlnlmk /jmlsks;
end;
begin
gotoXY(21,1);
writeln('_________________________');
gotoXY(21,2);
writeln('______program coba_______');
gotoXY(21,3);
writeln('______ _______');
gotoXY(21,4);
writeln('_________________________');
write ('masukan jumlah
nilai MK = ');readln(jmlnlmk);
write ('masukan jumlah
SKS = ');readln(jmlsks);
writeln('IP anda adalah
= ' ,ip(jmlnlmk,jmlsks):2:2);
end.
0 comments:
Post a Comment