Prijeđi na sadržaj

Naredba (programiranje)

Izvor: Wikipedija

U računalnom programiranju, naredba se može shvatiti kao najmanji zasebni element imperativnog programskog jezika. Program je oblikovan kao slijed jedne ili više naredbi. Naredbe imaju unutarnje dijelove (npr. izraze).

Mnogi jezici (npr. C) ne razlikuju naredbe i definicije, a naredbe samo sadrže izvršivi kod i definiciju koja deklarira identifikator. Razlika se također može načiniti između jednostavnih i složenih naredbi - potonje mogu sadržavati same naredbe kao dijelove.

U hrvatskom se vrlo često naziv naredba koristi i kao sinonim za mikroprocesorsku instrukciju.

Vrste naredbi

[uredi | uredi kôd]

Slijede tri glavne općenite vrste naredbi s primjerima u tipičnim imperativnim jezicima:

Definicije i deklaracije

[uredi | uredi kôd]
  • definicija: TYPE PLAĆA = INTEGER
  • deklaracija: VAR A:INTEGER

Jednostavne naredbe

[uredi | uredi kôd]

Složene naredbe

[uredi | uredi kôd]
  • blok naredbi: begin WRITE('Broj? '); READLN(BROJ); end
  • if-naredba: if A > 3 then WRITELN(A) else WRITELN("NOT YET") end
  • switch-naredba: switch (c) { case 'a': alert(); break; case 'q': quit(); break; }
  • while-petlja: while NOT EOF DO begin READLN end
  • do-petlja: do { računaj(&i); } while (i < 10);
  • for-petlja: for A:=1 to 10 do WRITELN(A) end

Izrazi

[uredi | uredi kôd]

U većini jezika se naredbe sučeljavaju s izrazima po tome što naredbe ne vraćaju rezultate i izvršuju se isključivo zbog svojih popratnih rezultata, dok izrazi uvijek vraćaju rezultat i često uopće nemaju popratnih rezultata. Među imperativnim programskim jezicima, ALGOL 68 je jedan od rijetkih u kojima naredbe mogu vratiti rezultat. U jezicima koji miješaju imperativne i funkcijske stilove, kao što je Lisp porodica jezika, se razlikuju izrazi i naredbe: čak se i izrazi izvršeni u slijednim kontekstima isključivo zbog svojih popratnih rezultata i čije se povratne vrijednosti uopće ne rabe smatraju 'izrazima'.

Programski jezici

[uredi | uredi kôd]

Sintaksa i semantika naredbi je specificirana definicijom programskog jezika. Većina programskih jezika ne dozvoljava stvaranje novih naredbi za vrijeme izvršavanja programa (Snobol 4 je primjer jezika koji dopušta), ili izmjenu već postojećih naredbi (Lisp je poznat po podršci za samoizmjenjujući kod).

Vidi još

[uredi | uredi kôd]
  • Izraz (kao suprotnost naredbi)