Friday, June 25, 2010

parameter formal dan aktual di pascal

PARAMETER FUNGSI
Parameter fungsi ada 2, yaitu : parameter formal dan parameter actual.
1. Parameter Formal (formal parameter)
Parameter yang dideklarasikan dibagian blok fungsi.
2. Parameter Aktual(actual parameter)
Parameter yang sebenarnya / parameter yang dilewatkan saat fungsi
dipanggil.

uses crt;


procedure HitungByValue(var A,B,C : integer); //parameter formal
begin
B:=A;
C:=A+B;
end;

var x,y,z: integer;

begin
writeln('masukkan x = ');
readln(x);
writeln('masukkan y = ');
readln(y);
writeln('masukkan z = ');
readln(z);
HitungByValue(x,y,z);   //parameter faktual
writeln(x,y,z);
readln;
end.


PARAMETER FUNGSI PASS BY VALUE
Parameter yang diberikan ke fungsi adalah ‘Nilainya’, tidak pernah
menspesifikasikan variabelnya. Bila ada perubahan pada parameter formal,
tidak akan mempengaruhi nilai pada parameter actual.


PARAMETER FUNGSI PASS BY REFERENCE
Memanipulasi nilai dari dalam fungsi. Setiap perubahan terhadap
parameter formal akan memepengaruhi nilai pada parameter actual.
Parameter formal diberi symbol ‘&’. Cara ini adalah cara efektif yang
memungkinkan sebuah fungsi mengembalikan lebih dari satu nilai.


jika pada procedur HitungByValue menggunakan var,,
maka fungsi pass by reference

uses crt;


procedure HitungByValue(var A,B,C : integer); //parameter formal
begin
B:=A;
C:=A+B;
end;

var x,y,z: integer;

begin
writeln('masukkan x = ');
readln(x);
writeln('masukkan y = ');
readln(y);
writeln('masukkan z = ');
readln(z);
HitungByValue(x,y,z);   //parameter faktual
writeln(x,y,z);
readln;
end.
x=5,y=7,z=8
maka outputnya = 5 5 10

bila tanpa var,, maka merupakan pass by value

uses crt;


procedure HitungByValue(A,B,C : integer); //parameter formal
begin
B:=A;
C:=A+B;
end;

var x,y,z: integer;

begin
writeln('masukkan x = ');
readln(x);
writeln('masukkan y = ');
readln(y);
writeln('masukkan z = ');
readln(z);
HitungByValue(x,y,z);   //parameter faktual
writeln(x,y,z);
readln;
end.
x=5,y=7,z=8
maka outputnya = 5 7 8

No comments: