Mesran

Hanya ingin berbagi kebaikan dan mendapatkan kebaikan yang lain.

Prosedure ByRefrence

Kelemahan dari prosedur byValue, yaitu tidak bisa mengirimkan nilai pengiriman parameter kembalian ke program pemanggilnya.

Jadi kelemahan ini bisa di atasi dengan model prosedur ByRefrence.


 

Program dibawah ini untuk mengembalikan nilai Luas ke program pemanggilnya, yaitu program utama.

USES CRT ;
Var  Ls, P, L : Byte ;

Procedure Hitung(Pj, Lbr : Byte ; Var Luas : Byte ) ;
Begin

Luas :=  Pj * Lbr ;

End;

BEGIN

TextColor (4) ; TextBackGround(15) ;
CLRSCR ;
Gotoxy(20, 7) ; Write (‘Input Panjang  : ‘) ; Readln (P) ;
Gotoxy(20, 8) ; Write (‘Input Lebar       : ‘) ; Readln (L) ;

Hitung(P, L, Ls) ;

Gotoxy(20,10) ; Write (‘Luas Persegi Panjang : ‘, Ls) ;

END.

Perhatikanlah program diatas tersebut. Perbedaan dengan program tersebut dengan program yang terdapat pada prosedur ByValue, yaitu :

1. Nilai yang di kirimkan ada 3, yaitu Hitung (P, L, Ls)  P, L, LS

2. Nilai yang di kembalikan (yang di kirimkan kembali oleh Procedure Hitung) yaitu Luas

3. Hitung hanya bertugas untuk memproses saja, hasil proses akan dikembalikan lagi ke Program Utamanya

4.  Program utama menampilkan hasil proses luas dari kiriman Procedure Hitung

Kesimpulannya dari kedua program, baik ByValue maupun ByRefrence yaitu Jika ingin mengembalikan nilai yang di proses ke program pemanggil, maka gunakan keyword VAR pada pendeklarasian nilai/variabel parameter di pendefinisian prosedur. Sebagai contoh.

Procedure Hitung (Pj , Lbr : Byte ; VAR Luas : Byte ) ;

Silahkan jika anda ingin bertanya  ?

Advertisements

Filed under: Pemrograman Pascal,

Terima kasih telah memberikan komentar anda.

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Archives Per Tahun

%d bloggers like this: