10
Algoritmi i programiranje Osnovne algoritamske strukture

Algoritmi II Cas

  • Upload
    s26mar

  • View
    233

  • Download
    1

Embed Size (px)

DESCRIPTION

C programski jezik

Citation preview

Page 1: Algoritmi II Cas

Algoritmi i programiranje

Osnovne algoritamske strukture

Page 2: Algoritmi II Cas

Osnovne algoritamske strukture

•Kombinovanjem gradivnih blokova dobijaju se osnovne algoritamske strukture• sekvenca• alternacija (selekcija)• petlja (ciklus)

•Pomoću osnovnih algoritamskih struktura može se predstaviti svaki algoritam

Page 3: Algoritmi II Cas

Sekvenca

• linijska struktura koja se dobija kaskadnim povezivanjem blokova obrade

A1

A2

A3

An

• Algoritamski koraci se izvršavaju redaom, jedan za drugim• Algoritamski korak Ai, i=2,...,n ne može da otpočne sa izvršenjem dok se korak Ai-1 ne završi• sekvenca predstavlja niz naredbi dodeljivanja (:=)•oblik naredbe:

promenljiva:=vrednosta:=bn:=n+1

Page 4: Algoritmi II Cas

Alternacija (selekcija)

•Omogućava uslovno izvršenje niza algoritamskih koraka

uslov uslov

S1 S2 S1

da ne da

• Blokovi označeni sa S1 i S2 mogu sadržati bilo koju kombinaciju osnovnih algoritamskih struktura.

Page 5: Algoritmi II Cas

•Nacrtati dijagram toka algoritama kojim se odredjuje veći od dva zadata broja korišćenjem formule

bab

baaba

,

,},max{

a>b

max:=a max:=b

da ne

max<b

max:=b

da

max:=a

Primer1

a,ba,b

maxmax

pocpoc

kraj kraj

ideja za nalaženje max u nizu

Page 6: Algoritmi II Cas

Naći maksimum od tri zadata broja a, b i c

}},,max{max{},,max{ cbacba

a,b,c

poc

a>bda ne

a>c b>c

max:=a max:=c max:=b max:=c

da danene

max

kraj

Page 7: Algoritmi II Cas

Petlja (ciklus)

• Omogćava da se algoritamski koraci ponavljaju više puta.

13

12

k

kknuslov

telo petlje

da

netelo petlje

uslovne

da

for i:=k1 to k2 step k3

telo petlje

while-do repeat-until brojačka petlja

broj prolaza

definisanje uslova

Page 8: Algoritmi II Cas

Pravila

• Ako petlja počne unutar then bloka ili else bloka, u tom bloku se mora i završiti!• Dozvoljene su paralelne (ugnježdjene) petlje.• Nisu dozvoljene petlje koje se seku!

Page 9: Algoritmi II Cas

Pravila

Paralelne petlje

petlje kojese seku

Page 10: Algoritmi II Cas

Primer - Euklidov algoritampoc

m,n

r:=“ostatak od m/n”

r ≠0

m:=nn:=rr:=“ostatak od m/n”

nzd:=n

nzdkraj

ne

da

poc

m,n

r:=“ostatak od m/n”m:=nn:=r

r = 0

nzd:=m

nzdkraj

ne

da

do-while

repeat-until