Functii Si Proceduri

S-ar putea să vă placă și

Sunteți pe pagina 1din 8

Functii

Proceduri
FUNCTII
Funciile snt subprograme care calculeaz i
returneaz o valoare.
Limbajul PASCAL conine un set de funcii prede
nite, cunoscute oricrui program: sin, cos, eof etc.
n completare, programatorul poate de ni funcii
proprii, care se apeleaz n acelai mod ca i
funciile-standard.
Prin urmare, conceptul de funcie extinde
noiunea de expresie PASCAL.
Textul PASCAL al unei declaraii de
funcie are forma:
function f(x1, x2,..., xn) : Prima linie este antetul funciei,
tr; format din: f numele funciei;
D; (x1, x2, ..., xn) lista opional
de parametri formali
Begin
reprezentnd argumentele
... funciei;
f := e;
... tr tipul rezultatului; acesta
end; trebuie s e numele unui tip
simplu sau tip referin.

Antetul este urmat de corpul


funciei, format din declaraiile
locale opionale D i
instruciunea compus begin ...
end.
Exemplu
Program P97;
{Declararea i utilizarea funciei Putere }
type Natural=0..MaxInt;
var a : real;
b : Natural;
c : real;
s : integer;
t : integer;
v : real;
function Putere(x : real; n : Natural) : real;
{calcularea lui x la puterea n }
var p : real;
i : integer;
begin
Exemplu
p:=1;
for i:=1 to n do p:=p*x;
Putere:=p;
end; { Putere }

begin
a:=3.0;
b:=2;
c:=Putere(a, b);
writeln(a:10:5, b:4, c:10:5);
s:=2;
t:=4;
v:=Putere(s, t);
writeln(s:5, t:4, v:10:5);
readln;
end.
Proceduri
Procedurile snt subprograme care efectueaz
prelucrarea datelor comunicate n momentul apelului.
Limbajul conine procedurile prede nite read,
readln, write, writeln .a., studiate n clasele
precedente.
n completare, programatorul poate de ni
proceduri proprii, care se apeleaz n acelai mod ca
procedurile-standard.
Prin urmare, conceptul de procedur extinde
noiunea de instruciune PASCAL.
Forma general a textului unei declaraii de
procedur este:
procedure p(x1, x2, ..., n antetul procedurii apar:
xn); D; p numele procedurii;
x1, x2, ..., xn lista opional de
Begin parametri formali;
... n corpul procedurii snt incluse:
D declaraiile locale
end; (opionale) grupate dup
aceleai reguli ca i n cazul
Parametrii din list introdui prin declaraii
de forma v1, v2, ..., vk : tp se numesc funciilor;
parametri-valoare. Acetia servesc pentru
transmiterea de valori din programul
principal n procedur.
begin ... end instruciune
Parametrii formali introdui n list prin compus; ea nu conine vreo
declaraii de forma var v1, v2, ..., vk : tp se atribuire asupra numelui
numesc parametri-variabil i servesc
pentru ntoarcerea rezultatelor din
procedurii.
procedur n programul principal.
Exemplu
Program P99;
{Declararea i utilizarea procedurii Lac }
var a, b, c, t, q : real;
procedure Lac(r : real; var l, s : real);
{lungimea i aria cercului }
{r - raza; l - lungimea; s - aria }
const Pi=3.14159;
begin
l:=2*Pi*r;
s:=Pi*sqr(r);
end; {Lac }
begin
a:=1.0;
Lac(a, b, c);
writeln(a:10:5, b:10:5, c:10:5);
Lac(3.0, t, q);
writeln(3.0:10:5, t:10:5, q:10:5);
readln;
end.

S-ar putea să vă placă și