Jendodimenzionalno polje Zoran Hercigonja mag edu inf 1



![Sintaksa deklaracije jednodimenzionalnog polja tip_elemenata_polja ime [duljina_polja]; 4 Sintaksa deklaracije jednodimenzionalnog polja tip_elemenata_polja ime [duljina_polja]; 4](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-4.jpg)

![Jednodimenzionalno polje int p[5]; p[0] p[1] p[2] p[3] p[4] Svaka varijabla u polju ima Jednodimenzionalno polje int p[5]; p[0] p[1] p[2] p[3] p[4] Svaka varijabla u polju ima](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-6.jpg)







![Jednodimenzionalno polje 1. #include<stdio. h> 2. int main(void) 3. { 4. int b[7]={10, 20, Jednodimenzionalno polje 1. #include<stdio. h> 2. int main(void) 3. { 4. int b[7]={10, 20,](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-14.jpg)
![Jednodimenzionalno polje b[0] b[1] b[2] b[3] b[4] b[5] b[6] 10 20 30 40 50 Jednodimenzionalno polje b[0] b[1] b[2] b[3] b[4] b[5] b[6] 10 20 30 40 50](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-15.jpg)





![Ispis elemenata jednodim. polja • for (kv=0; kv<n; kv++) • printf („n format”, ime_polja[kv]); Ispis elemenata jednodim. polja • for (kv=0; kv<n; kv++) • printf („n format”, ime_polja[kv]);](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-21.jpg)






![Zadatak 1 • Deklarirajte polje od 10 elemenata • a[10]={2, 4, 6, 8, 10, Zadatak 1 • Deklarirajte polje od 10 elemenata • a[10]={2, 4, 6, 8, 10,](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-28.jpg)

![Zadatak 2 • Deklarirajte polje od 10 elemenata • a[10]={2, 4, 6, 8, 10, Zadatak 2 • Deklarirajte polje od 10 elemenata • a[10]={2, 4, 6, 8, 10,](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-30.jpg)

![Zadatak 3 Nadogradite zadatak 2 tako da deklarirate novo polje od 10 elemenata b[10]; Zadatak 3 Nadogradite zadatak 2 tako da deklarirate novo polje od 10 elemenata b[10];](https://slidetodoc.com/presentation_image_h/f1920619678888161ea359de1e07cd5a/image-32.jpg)



- Slides: 35
Jendodimenzionalno polje Zoran Hercigonja, mag. edu. inf. 1
Polje • Polje je niz varijabli istog tipa imenovanih zajedničkim identifikatorom, koje se nalaze na uzastopnim memorijskim lokacijama • Svaka varijabla u polju se naziva element polja 2
Jednodimenzionalno polje • Najednostavniji oblik polja • Elementi se dohvaćaju s pomoću samo jednog indeksa • Elementi polja nalaze se u linearnom slijedu 3
Sintaksa deklaracije jednodimenzionalnog polja tip_elemenata_polja ime [duljina_polja]; 4
Sintaksa deklaracije jednodimenzionalnog polja • tip_elemenata_polja- ili tip_podataka predstavlja jedan od osnovnih tipova podataka u C-u • Koji tipovi podataka postoje? • ime-ili identifikator • duljina polja- ili broj_elemenata polja je najveći mogući broj elemenata koji se mogu upisati u dano polje 5
Jednodimenzionalno polje int p[5]; p[0] p[1] p[2] p[3] p[4] Svaka varijabla u polju ima indeks preko kojeg joj se pristupa Posljednji element polja Prvi element polja uvijek duljine N ima indeks 0! indeks N-1! 6
Jednodimenzionalno polje • Važno : • Deklaracijom jednodimenzionalnog niza u memoriji se za svaki element rezervira posebna memorijska lokacija • Rezervirane lokacije obično idu jedna iza druge 7
Jednodimenzionalno polje • Pitanje • Kakvog su tipa podataka varijable u polju? • Da li su istog tipa ili različitog tipa podataka? 8
Jednodimenzionalno polje • Varijable u polju su sve istog tipa podataka 9
Jednodimenzionalno polje • Ako deklariramo niz od 7 elemenata program prevoditelj osigurava u memoriji neprekinut prostor za 7 realnih podataka float a[7] 10
Jednodimenzionalno polje Indeksi a 0 1 2 3 4 5 6 Ime niza 11
Jednodimenzionalno polje • Važno: • Ako se niz deklarira kao globalna varijabla onda je početna vrijednost svih elemenata niza jednaka 0 • Ako se deklarira kao lokalna varijabla onda elementi niza nisu inicijalizirani • Ako je potrebno polje se može inicijalizirati prilikom deklaracije ili u programu 12
Jednodimenzionalno polje • Ako prilikom inicijalizacije skup vrijednosti ima manje elemenata nego što je deklarirano, vrijednost preostalih elemenata su 0 13
Jednodimenzionalno polje 1. #include<stdio. h> 2. int main(void) 3. { 4. int b[7]={10, 20, 30, 40, 50}; 5. printf("n %d", b[6]); 6. system("pause"); 7. return 0; 8. } 14
Jednodimenzionalno polje b[0] b[1] b[2] b[3] b[4] b[5] b[6] 10 20 30 40 50 0 0 15
Jednodimenzionalno polje • Važno: • broj elemenata unutra polja može biti jednak veličini polja ili manji 16
Jednodimenzionalno polje 1. 2. 3. 4. 5. 6. 7. #include<stdio. h> int main(void) { int b[3]={10, 20, 30, 40, 50}; system("pause"); return 0; } 17
Jednodimenzionalno polje • Duljina niza može se i izostaviti. Program prevoditelj će tada sam odrediti duljinu niza prema broju elemenata navedenih unutar vitičastih zagrada 18
Jednodimenzionalno polje 1. 2. 3. 4. 5. 6. 7. 8. 9. #include<stdio. h> int main(void) { int b[]={10, 20, 30, 40, 50}; printf("n %d", b[5]); system("pause"); return 0; } 19
Ispis elemenata jednodim. polja • Naredba za ispis se kombinira s programskim petljama koje omogućuju pomicanje po nizu promjenom indeksa • Od tri programske petlje najpraktičnija je for petlja 20
Ispis elemenata jednodim. polja • for (kv=0; kv<n; kv++) • printf („n format”, ime_polja[kv]); • kv- kontrolna varijabla • n-veličina niza (najveći broj elemenata) • format-format za ispis kojiovisi o tipu elemenata upisanih u niz 21
Ispis elemenata jednodim. polja 1. #include<stdio. h> 2. 3. 4. 5. 6. 7. 8. 9. int main (void) { int i, b[3]={1, 2, 3}; for(i=0; i<3; i++) printf ("n %d", b[i]); system("pause"); return 0; } 22
Ispis elemenata jednodim. polja Što će ispisati sljedeći program? 1. #include<stdio. h> 2. 3. 4. int i, b[10]={2, 4, 6, 8, 10, 12, 14, 16}; int main (void) { 5. 6. 7. 8. 9. for(i=1; i<10; i+=2) printf ("n %d", b[i]); system("pause"); return 0; } 23
Ispis elemenata jednodim. polja Ispis: 4, 8, 12, 16, 0 Zašto? Kontrolna vrijednost u petlji jednaka je 1 što znači da će prvi element imati indeks 1 to jest dat će broj 4 Vrijednost kontrole varijable uvećava se za 2 pa se svaki drugi element preskače Prilikom deklaracije polja zauzeto je 10 mjesta, a aprilikom inicijalizacije popunjeno je samo 8. Deveti i deseti element automatski se popunjava nulom 24
Unošenje vrijednosti elemenata u polje • Kao i kod ispisa vrijednosti, za njihovo unošenje koriste se programske petlje. • for (kv=0; kv<n; kv++) • printf („n format”, &ime_polja[kv]); 25
Unošenje vrijednosti elemenata u polje 1. #include<stdio. h> 2. 3. 4. 5. 6. 7. 8. 9. { int main(void) int i, b [3]; for(i=0; i<3; i++) printf("n %d", b[i]); system("pause"); return 0; } 26
Unošenje vrijednosti elemenata u polje Prethodni zadatak kombiniran s ispisom 1. #include<stdio. h> 2. 3. 4. 5. 6. int main(void) { int i, b [3]; for(i=0; i<3; i++) scanf("n %d", &b[i]); 7. for(i=0; i<3; i++) 8. printf("n %d", b[i]); 9. system("pause"); 10. return 0; 11. } 27
Zadatak 1 • Deklarirajte polje od 10 elemenata • a[10]={2, 4, 6, 8, 10, 12, 14, 16, 18, 20}; 28
29
Zadatak 2 • Deklarirajte polje od 10 elemenata • a[10]={2, 4, 6, 8, 10, 12, 14, 16, 18, 20}; • I ispišite 1, 4, 6 i 10 element 30
31
Zadatak 3 Nadogradite zadatak 2 tako da deklarirate novo polje od 10 elemenata b[10]; i u njega napravite unos od 5 elemenata 32
33
Zadatak 4 • Nadogradite zadatak 3 tako da upotrebom for petlje napravite ispis elemenata polja a[10]={2, 4, 6, 8, 10, 12, 14, 16, 18, 20}; 34
35



































