Pascal - podprogramy, funkcie
Podprogramy – Funkcie
Funkcie na rozdiel od procedúry dáva ako výsledok iba jedinú hodnotu. Deklarácia pozostáva : - z hlavičky – obsahuje oproti hlavičke procedúry aj typ výsledku - z tela Deklarácia: Funkction meno ({var} s1,s2. . . sn) : typ ; {uses....} {type....} {const...} {var ....} {procedure...} {function...} .. begin telo funcie; end;
{} - v zátvorkách sú uvedené nepovinné veci; meno – meno funkcie s1,s2. . . sn - parametre typ - typ výsledku funcie V tele funcie musí byť funkcii priradená hodnota, napr meno:=s1+s2; Funciu voláme rôznymi spôsobmy. napr. write(meno(x,y)); a:=meno(x,y); Príklad : Napíš funkciu, ktorá vypočíta obsah trojuholníka, ak je daná strana b a jej výška v na stranu b.
var e,f:real; Funkction obsah (b,vb : real): real; begin obsah:= (b * vb) / 2; end; begin write('zadaj stranu trojholníka'); readln(e); write('zadaj výšku na túto stranu'); readln(f); write('obsah trojholníka je ',obsah(e,f)); end.
Príklad : Napíš funkciu na výpočet najväčšieho spoločného deliteľa dvoch celých čísel.
Funkction nsd(a,b : integer) : integer; var c: integer; begin while b <> 0 do begin c:= a mod b; a:= b; b:= c; end; nsd:= a; end;.
|