Professional Documents
Culture Documents
Algoritmi-Sadrzaj Docx1
Algoritmi-Sadrzaj Docx1
Algoritmi-Sadrzaj Docx1
UVOD..............................................................................................................................................2
1. POJAM ALGORITMA............................................................................................................3
2. PREDSTAVLJANJE ALGORITAMA....................................................................................3
2.1 Dijagram toka........................................................................................................................4
2.1.1 Primjer dijagrama toka...................................................................................................4
2.2 Pseudokod..............................................................................................................................5
2.2.1 Primjer............................................................................................................................5
3. ALGORITAMSKE STRUKTURE.........................................................................................6
3.1 Linijska struktura (Sekvencija)..............................................................................................6
3.1.1 Primjer............................................................................................................................6
3.2 Razgranata struktura (Selekcija)............................................................................................6
3.2.1 Primjer............................................................................................................................7
3.3 Ciklična Struktura (Iteracija).................................................................................................7
3.3.1 Primjer............................................................................................................................8
ZAKLJUČAK..................................................................................................................................9
LITERATURA..............................................................................................................................10
REFERENCE................................................................................................................................11
UVOD
Algoritam se zapisuje u :
o Obliku pseudo jezika ( govornog jezika koji oponaša programski jezik)
o Grafičkom obliku tzv. Blok dijagram ili dijagram tijeka programa.
2
1. POJAM ALGORITMA
Definisanost : Svaka operacija ili pravilo mora imati definisano i samo jedno značenje, tj.
rezultat svake operacije mora biti jasno definisan.
Konačnost : Svaki korak mora biti takav da bi ga, bar u prinicipu, mogao izvesti čovjek
koristeći olovku i papir za konačno vrijeme. Postoje jednostavni i jednoznačni postupci koji nisu
algoritmi jer su beskonačni sa stanovišta broja koraka potrebnog za dobijanje rezultata.
Algoritmi se moraju zaustaviti posle izvršenog konačnog broja koraka i u konačnom vremenu. U
vezi sa primjenom računara treba napomenuti da vrijeme rada računara potrebno za završetak
algoritma treba biti razumno kratko.
Rezultat : Po završetku algoritma mora da postoji mogućnost da se ustanovi rezultat
njegovog rada, odnosno da li je algoritam postigao svoj cilj ili nije.
Pojam algoritma ne mora biti vezan za primjenu računara. Algoritmi se koriste u
svakodnevnom životu za izvršavanje različitih aktivnosti kao npr Kuharski recepti. Algoritam je
dakle konačna i precizno definisana procedura, niz dobro definisanih pravila, kojom se ulazne
vrednosti transformišu u izlazne, ili se opisuje izvršavanje nekog postupka.
Danas se reč algoritam najvise vezuje za pojam računarstva mada uopšteno algoritam
možemo smatrati kao uputstvo kako rešiti neki zadatak ili problem. Tako se i uputstvo za slanje
čoveka na mjesec i uputstvo za pravljenje ruske salate sastoji od niza koraka, postupaka, koje
treba uraditi i koji vode ispunjenju cilja ili rešavanju problema. Uputstvo može sadržati korake
koji se ponavljaju više puta ili korake kada treba doneti neku odluku, na osnovu nekog
kriterijuma.
Algoritam zapisan formalnim jezikom koji računar »razumije« naziva se program a jezik
zapisivanja programa naziva se programski jezik.
2. PREDSTAVLJANJE ALGORITAMA
dijagram toka i
pseudokod 2
3
2.1 Dijagram toka
Jedan od načina prezentiranja algoritma je dijagram toka. To je zapravo grafički jezik, jer za
prikaz koristi grafičke simbole. Takav način zapisivanja ima nekoliko prednosti pred
pseudokodom. Zapisivanje se vrši međunarodno dogovorenim simbolima i ne ovisi o govornom
jeziku onoga koji sastavlja algoritam. Grafički prikaz je jednostavan, pregledan, lako se
pronalaze greške.
U ovom dijagramu pojedine akcije predstavljene su tačno odredjenim grafičkim simbolima
čime se osigurava jednostavnost, preglednost i jednoznačnost zapisa algoritma.
Primjer najjednostavnijeg algoritma koji odlučuje o tome hoćete li obući majicu kratkih ili
dugih rukava,pretstavljen dijagramom toka :
4
Slika 2. Algoritam oblačenja majice sa dugim ili kratkim rukavima
Vizuelizacija programskog toka i toka podataka su izuzetno korisni za razvoj i razradu
algoritma. Objektno orijentisano programiranje je uvelo nove pojmove i forme i u analizu i u
projektovanje, a više vrsta dijagrama se koristi u procesu koji se naziva unifikovano modelovanje
za koje je razvijen i standardizovan UML (Objedinjeni jezik za modelovanje).
2.2 Pseudokod
Za algoritam koji je sam po sebi dovoljno složen, predstavljanje uz pomoć dijagrama toka
može biti teško za čitanje, modificiranje ili revidiranje. Zbog toga je razvijen tzv. pseudokod uz
pomoć kojeg možemo predstaviti algoritam.
Pseudokod je sastavljen od liste naredbi. Neke od tih naredbi su slične onima koje koristimo
kod dijagrama toka, npr. čitaj, ispiši ili uvjetni izrazi. 3Kod linijske algoritamske strukture
naredbe u pseudoprogramu izvršavaju se redom počevši od vrha pa sve do dna.
Pseudokod je tekstualno zapisana uputa za određeni algoritam. Takva uputa na specifičan način
opisuje korake koje je potrebno provesti da bi se ostvario algoritam.Uputa ne sadrži naredbe
pojedinog programskog jezika već samo riječima opisane korake za rješavanje određenog
problema.
2.2.1 Primjer
Spomenuti algoritam i Slika 2.(vezan uz oblačenje majice s kratkim ili dugim rukavima)
može se iskazati I pseudokodom. Takav način zapisivanja algoritma vrlo je blizak
svakodnevnom govoru i često se od njega skoro uopće ne razlikuje.
Spomenuti algoritam (Slika 2.) napisan u pseudokodu:
Pocetak
Pogledaj kolika je vanjska temperatura
Ako je temperatura manja od 25 stupnjeva
obuci majicu kratkih rukava
inače
obuci majicu dugih rukava
Kraj
3
Grbavac, V., Informatika
5
Rezultat gornjeg algoritma je jasan: ako je temperatura niža od 25 stupnjeva, obući ćete
majicu dugih rukava; inače ćete obući majicu kratkih rukava.
3. ALGORITAMSKE STRUKTURE
3.1.1 Primjer
Zbir brojeva a i b.
INPUT a, b
zbir = a + b
PRINT zbir
6
su IF i CASE, pri čemu se vrši testiranje određenog uslova a prema rezultatu (obično TRUE ili
FALSE) algoritam se grana i nastavlja tok jednom od grana- opcija.
Primjer na slici je tipičan gdje se otklanja blokiranje programa provjerom da li je djelilac
jednak nuli. Ako je djelilac različit od nule, dati će rezultat dijeljenja, u suprotnom će dati samo
poruku da dijeljenje nulom nema smisla i nastaviti dalje prema sledećoj proceduri ili kraju
programa.
3.2.1 Primjer
INPUT a,b
IF b <> 0 THEN
PRINT a/b
ELSE
PRINT "Ne mogu dijeliti nulom"
END
Ciklični algoritam će se pojaviti kada treba isti posao uraditi više puta. Postoji više varijanti
ove srtukture a dvije osnovne podjele su:
o Broj iteracija (ponavljanja) je unaprijed poznat. Primjer ove petlje je na slici 5. i tu se
obično koristi petlja FOR i
o Iteracija se vrši dok se ne zadovolji određen uslov. Koriste se petlje tipa WHILE..DO.
Kod Iteracije sa provjerom istinitosti uslova (da li je uslov zadovoljen) postoje varijante s
provjerom uslova na ulazu u petlju, odnosno na izlazu tj. kraju petlje. Razlika između ove dvije
varijante je što kod provjere istinitosti uslova na kraju petlje program mora proći bar jednom
kroz petlju.
7
3.3.1 Primjer
zbir = 0
INPUT b
FOR a = 1 TO b
zbir = zbir + a
NEXT a
PRINT zbir
END
8
ZAKLJUČAK
9
LITERATURA
10
REFERENCE
11