Pascal: Funkcije i procedure (nastavak)
Ovo je nastavak prethodnog texta koji odvajamo zbog preglednosti. Kao sto smo vec pomenuli, funkcije i procedure su dva tipa potprograma. Ovo vazi za pascal, python kao i vecinu modernih programskih jezika. Razlika je sto funkcije vracaju neku vrednost u glavni program, dok procedure jednostavno urade ono zbog cega su pozvane i tu im se zadatak zavrsava. One medjutim mogu primati argumente iz glavnog programa, na osnovu kojih ce izvrsiti svoj zadatak. Pogledajmo primer:
program Procedura; uses crt; var n:integer; procedure lines(c:byte; lin:integer); var m:integer; begin textcolor(c); gotoXy(10,lin); for m := 1 to 10 do begin Write(chr(196)); end; end; begin for n := 1 to 7 do begin lines (n,n); end; readln; end.
U ovom primeru nasa procedura ispisuje linije u razlicitim bojama u sukcesivnim redovima. Argumente koje prima su boja i linija. Iz glavnog programa for petlja poziva proceduru i salje joj parametre za oba elementa koji se povecavaju za jedan. Rezultat je program koji ispisuje 7 linija u isto toliko boja.
Kao sto smo vec pomenuli, procedure mogu da rade i bez argumenata. Tada ih jednostavno pozivamo iz glavnom programa imenom. U tom slucaju funkcionisu recimo kao klasicni potprogrami iz Basica. Sada cemo prethodni primer preraditi tako da funkcionise na ovaj nacin.
program Procedura2; uses crt; procedure xyz; var n,m:integer; begin for n := 1 to 7 do begin textcolor(n); gotoXy(10,n+5); for m := 1 to 10 do begin Write(chr(196)); end; end; end; begin write('Nasih 7 linija >>'); xyz; readln; end.
Ovde smo najpre definisali proceduru xyz koja crta 7 linija u duginim bojama. Zatim smo jednostavno pozvali xyz iz glavnog programa. Naravno, ovaj pristup ima smisla u koliko se radnja ponavlja vise puta. Primere namerno pravimo tako da budu jednostavni, da bi se lakse ilustrovali principi i metod rada.
Posted on 2017/10/14, in Pascal, Programski jezici, Tutorijali. Bookmark the permalink. 1 Comment.
Pingback: Pascal: Retrospektiva | Kompjuteri