1 / 15

FUNKCIJE (POTPROGRAMI) i PROCEDURE

FUNKCIJE (POTPROGRAMI) i PROCEDURE. ŠTA JE TO FUNKCIJA?. DEO PROGRAMA KOJI ZAMENJUJE NEKU GRUPU NAREDBI OSNOVNOG PROGRAMA SAMOSTALNA PROGRAMSKA CELINA OLAKŠAVA PISANJE SLOŽENIH PROGRAMA, GDE VIŠE PUTA TREBA PISATI ISTI KOD OSNOVNI PROGRAM ZOVE NEKU FUNKCIJU U POMOĆ!.

amil
Download Presentation

FUNKCIJE (POTPROGRAMI) i PROCEDURE

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. FUNKCIJE (POTPROGRAMI)i PROCEDURE

  2. ŠTA JE TO FUNKCIJA? • DEO PROGRAMA KOJI ZAMENJUJE NEKU GRUPU NAREDBI OSNOVNOG PROGRAMA • SAMOSTALNA PROGRAMSKA CELINA • OLAKŠAVA PISANJE SLOŽENIH PROGRAMA, GDE VIŠE PUTA TREBA PISATI ISTI KOD • OSNOVNI PROGRAM ZOVE NEKU FUNKCIJU U POMOĆ!

  3. FUNKCIJA mora imati: • JEDINSTVENO IME (IDENTIFIKATOR) • Poziva se u osnovnom programu navođenjem IMENA i STVARNIH parametara u zagradi razdvojenih zapetom! • Može se pozivati više puta i koristiti u raznim programima po potrebi, kada treba izračunati nešto ili uraditi neki deo programa.

  4. OPIS FUNKCIJE • Primer: minimum dva cela broja functionmin (a,b :integer) :integer; begin if a<b then min:=a; else min:=b end; IME FUNKCIJE PARAMETRI FUNKCIJE TIP REZULTATA IMENU FUNKCIJE DODELIMO REZULTAT !

  5. OPIS FUNKCIJE • Promenljive koje koristimo su LOKALNE i ne vide se u osnovnom programu! • Gde pišemo kod funkcije u programu? POSLE ODELJKA VAR ZA NAVOĐENJE PROMENLJIVIH U PROGRAMU

  6. Kako izgleda jedna funkcija u nekom programu.... program minimum_2_broja; var min1, x, y; function begin writeln(‘Unose se dva broja:’); readline (x, y); min1:=min (x,y); writeln (‘Najmanja vrednost dva broja:’,min1) end. …………………………………. stvarni parametri

  7. PARAMETRI FUNKCIJE • Parametri navedeni pri pozivu funkcije se nazivaju STVARNI parametri, a parametri navedeni u opisu funkcije nazivaju se FORMALNI parametri. function min (a,b:integer) :integer; U programu: min1:=min (x, y); STVARNI PARAMETRI

  8. Naredbe potprograma (function) se izvršavaju kada u osnovnom programu dođe do poziva funkcije! • Primer: s:= suma (m,n); U toku izvršavanja funkcije suma parametrima m i n se dodeljuju stvarne, učitane, proizvoljne vrednosti : s:= suma (2,10) ; m i n dobijaju vrednosti 2 i 10!

  9. PROCEDURE procedure razmeni ( var a,b: integer); procedure MinMax( a, b: integer; var min,max:integer) promenljive a i b će menjati svoje vrednosti Čuvaju izlazne rezultate, DVA REZULTATA! ulazni podaci (KONSTANTNI, NEPROMENLJIVI)

  10. PROCEDURE • Procedure su slične kao funkcije, zar ne?! • Razlike su sledeće: • Mogu imati više izlaznih rezultata ili nijedan (tada obavljaju neki poseban zadatak,npr.stampanje, razmena vrednosti dva broja) • U opisu procedure imamo dve vrste parametara! Vrednosni parametri – ulazni podaci koje ne želimo da menjamo u toku izvršavanja procedure – dobijaju vrednosti stvarnih (unetih) parametara u programu (kao formalni kod funkcija) Promenljivi parametri – obično čuvaju izlazne rezulate procedure – koriste ključnu reč VAR

  11. Primer PROCEDURE : procedurerazmeni (var a,b: integer); var t:integer; begin t:=a; a:=b; b:=t end; Nema izlaznog rezultata, samo se menjaju vrednosti!

  12. Kako pozivamo procedure ? program Ime_programa; var procedure begin {*početak programa*} …………. razmeni(a,b); ILI NEKA DRUGA PROCEDURA MinMax (a,b,min,max); writeln (min,max) end. promenljive programa naredbe procedure

  13. Dakle,šta smo naučili? Funkcije i procedure su posebni delovi programa, koje pišemo posle odeljka VAR! Funkcije i procedure pozivamo iz osnovnog programa! Funkcije za razliku od procedura daju samo jedan rezultat!

  14. Primer FUNKCIJE: n-ti stepen celog broja a function stepen ( a,n:integer) :integer; var an,i:integer; a*a*a* …*a begin an:=1; for i:=1 to n do n puta an:=an*a; stepen:=an end; dodeljujemo izračunatu vrednost

  15. LOKALNE I GLOBALNE PROMENLJIVE • Svaki objekat opisan u funkciji ili proceduri smatra se LOKALNIM i može se koristiti samo u okviru funkcije ili procedure. Nedostupan je u osnovnom programu. • Svaki objekat koji je opisan u osnovnom programu se smatra GLOBALNIM i može se koristiti i u okviru opisa funkcije ili procedure procedure P; var b:integer; procedure P; var a:integer; begin begin end; ..... end; globalna lokalna

More Related