12.07.2015 Views

Programski jezik C - Pmf

Programski jezik C - Pmf

Programski jezik C - Pmf

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

166 POGLAVLJE 10. POLJA10.6 Višedimenzionalna poljaDeklaracija višedimenzionalnog polja ima oblikmem_klasa tip ime[izraz_1][izraz_2]...[izraz_n];gdje je mem klasa memorijska klasa, tip je tip podatka, ime je ime polja, aizraz 1, . . . , izraz n su konstantni cjelobrojni pozitivni izrazi koji odredujubroj elementa polja vezanih uz pojedine indekse. Tako se prvi indeks krećeod 0 do izraz 1 - 1, drugi od 0 do izraz 2 - 1 itd.Na primjer, polje m deklarirano sastatic float m[2][3];predstavlja matricu s dva retka i tri stupca. Njene elemente možemo prostornozamisliti na sljedeći način:m[0][0] m[0][1] m[0][2]m[1][0] m[1][1] m[1][2]U prvom retku su elementi m[0][i] za i=0,1,2, a u drugom m[1][i] zai = 0, 1, 2. Element na mjestu (i,j) matrice m je m[i][j].Elementi višedimenzionalnog polja pamte se u memoriji računala kaojedno jednodimenzionalno polje. Pri tome su elementi poredani po recima štoznači da se pri smještanju elemenata u memoriju najdesniji indeks najbrževarira. Kod dvodimenzionalnog polja m poredak elemenata u memoriji bio bim[0][0] m[0][1] m[0][2] m[1][0] m[1][1] m[1][2]Preciznije element m[i][j] biti će na l-tom mjestu u memoriji, gdje jel=i*MAXY+j,a MAXY=3 je broj stupaca matrice. Poznavanje te činjenice važno je pri konstrukcijinumeričkih algoritama koji rade s matricama te za razumijevanjeinicijalizacije polja. Na primjer, polje m može biti inicijalizirano na sljedećinačin:static float m[2][3]={1.0,2.0,3.0,4.0,5.0,6.0};Inicijalne vrijednosti će biti pridružene elementima matrice po recima:m[0][0]=1.0, m[0][1]=2.0, m[0][2]=3.0,m[1][0]=4.0, m[1][1]=5.0, m[1][2]=6.0.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!