Anda di halaman 1dari 2

Tujuan Pembelajaran

Setelah mengikuti kegiatan belajar 1, siswa diharapkan dapat :


1. Menjelaskan definisi procedure
2. Mendeklarasikan procedure
3. Menggunakan parameter dalam procedure
4. Menyelesaikan masalah menggunakan procedure
Mengamati/ observasi
Prosedur diawali dengan kata tercadang Procedure di dalam bagian deklarasi prosedur.
Prosedur dipanggil dan digunakan di dalam blok program yang lainnya dengan menyebutkan judul
prosedurnya.
Sebagaimana halnya sebuah program, suatu procedure juga memiliki header dan blok.
Perbedaan bentuknya dengan program hanyalah pada bagian header-nya saja.

Jangkauan Variabel
Variabel yang dideklarasikan dalam suatu blok program hanya berlaku pada blok dimana
variabel tersebut didefinisikan. Perhatikan contoh program berikut
program p;
var x : real;
procedure pl;
var y : integer;
begin
………………;
………………;
end;
// Program Utama
begin
………………;
………………;
………………;
end.
Procedure dengan Parameter
Nilai dalam suatu subprogram FreePascal sifatnya adalah lokal, artinya hanya dapat
digunakan pada modul atau unit yang bersangkutan saja, tidak dapat digunakan pada modul atau
unit program yang lainnya. Parameter adalah data masukan untuk subprogram yang nantinya akan
diproses lebih lanjut dalam subprogram tersebut. Dalam Pascal, dikenal dua macam parameter,
yaitu :
1. parameter nilai (value parameter), dan
2. parameter referensi (reference parameter).
Cara mendeklarasikan parameter tersebut adalah sebagai berikut :
procedure B(namaParam : tipeData; var namaParam :
tipeData);
begin
{ statement }
end;
Untuk menggunakan sebuah prosedur dalam program utama adalah cukup dengan memanggil
nama prosedur dan memberikan parameter yang sesuai jika prosedur yang dipanggil
membutuhkan parameter. Contoh :
procedure tanya_hitung;
var X,Y : real;
begin
write (‘Nilai X ?’);
readln (X);
Y:=X*X;
writeln (‘Nilai Y = ‘, Y : 6:2);
end;
Program ini jika di compile dan di run, hasilnya adalah :
Nilai X ? 5
Nilai Y = 25.00
Keterangan :
Variabel X dan Y sifatnya adalah lokal untuk prosedur tanya_hitung, artinya hanya dapat digunakan pada modul
itu saja. Pada modul yang lain tidak dapat digunakan.

Pengiriman Parameter (passing parameter)


Proses pengiriman data dari parameter aktual ke parameter formal disebut dengan transferparameter (passing
parameter). Nama parameter aktual dan parameter formal boleh berbeda,tetapi harus memiliki tipe data yang
sama selain itu juga jumlah parameter aktual dan parameter formal harus sama. Di FreePascal, parameter dapat
dikirim secara nilai (by value) atau secara acuan (by reference).
b) Pengiriman parameter secara nilai (by value)
Jika parameter dikirim secara nilai, maka parameter formal yang terletak di dalam
pendefinian prosedur akan berisi nilai yang dikirimkan dari parameter 2ctual, yang
kemudian bersifat 2ctua di prosedur tersebut. Bila nilai parameter formal di dalam
prosedur tersebut berubah, maka tidak akan mempengaruhi nilai parameter 2ctual (nilai
parameter 2ctual tetap). Pengiriman parameter secara nilai biasanya terjadi pada jenis
parameter masukan (input parameter).
b) Pengiriman parameter secara acuan (by reference)
Bila parameter dikirimkan secara acuan, maka perubahan-perubahan yang terjadi pada
nilai parameter formal di prosedur akan mempengaruhi nilai parameter 2ctual di blok
program utama. Jenis parameter ini dideklarasikan di dalam prosedur dengan
menggunakan kata cadang var.
Acuan Forward
Digunakan untuk mendeklarasikan dimuka judul prosedur terpisah dari bloknya. Kegunaan
utama dari mekanisme forward ini adalah untuk teknik rekursif dengan menggunakan dua prosedur
yan saling memanggil.
Contoh:
Var I : integer;
Procedure pro1(var I : integer); Forward;
Procedure pro2(var I : integer);
Begin
Writeln(‘prosedur pro’,I);
End;
Procedure pro1;
Begin
Writeln(‘prosedur pro’,I);
End;
// Program Utama
Begin
I := 1; pro1(I);
I := 2; pro2(I);
End.
Hasilnya :
Prosedur pro1
Prosedur pro2

Anda mungkin juga menyukai