Nizovi (polja)
| Sitio: | CARNET - Arhiva 2021 Loomen |
| Curso: | Algoritmi i programiranje 2. razred |
| Libro: | Nizovi (polja) |
| Imprimido por: | Utente ospite |
| Día: | Saturday, 21 de March de 2026, 13:26 |
1. Nizovi - polja
Niz (polje) je programska struktura koja omogućuje unos i
pohranu više podataka na neku memorijsku lokaciju.
U C++-u je polje konačan niz podataka istog tipa koji predstavljaju cjelinu.
Sastoji se od elemenata (članova) polja, kojima se unutar
polja položaj opisuje cjelobrojnim brojčanim indeksom.
Polja mogu biti:
- jednodimenzionalna
- višedimenzionalna
2. Jednodimenzionalni nizovi
Niz (polje) treba deklarirati kako bi se u memoriji rezervirao prostor za elemente polja.
Članovi moraju biti istog
tipa, dok su indeksi članova uvijek
brojčani!
Opći oblik deklaracije
jednodimenzionalnog polja:tip_podataka ime_polja [duljina];
Kod jednodimenzionalnih
polja članovi (elementi) su poredani u niz (jedan iza drugoga),
a indeks pojedinog
člana odgovara njegovoj udaljenosti od prvog člana koji ima indeks 0.
U kodu se vrijednosti
navode unutar para vitičastih zagrada, odvojene zarezom:
int X[6]={2,34,1,67,99,7};
Duljina deklariranog polja ne može se tijekom izvođenja
programa mijenjati!
Ako je deklarirana duljina
polja veća od broja članova kojima je pridružena vrijednost, preostalim
članovima pridružuje se vrijednost 0.
Nedostatak je i što C++ ne provjerava granice polja.
3. Primjeri jednodimenzionalnih nizova
1. primjer: Inicijalizacija elemenata polja u kodu i ispis polja:
2. primjer: Elemente polja moguće je unijeti i sa konzole, tada nam treba petlja za unos
3. primjer: Pretraživanje polja
4. primjer: izračun prosječnog iznosa članova polja:
4. Dvodimenzionalni nizovi
Želimo
li pojedinoj varijabli dodijeliti više podataka, npr. ime i broj telefona to
možemo učiniti uporabom višedimenzionalnih polja.
Članovi
dvodimenzionalnih
polja mogu se izdvojiti (dohvatiti) pomoću dva
indeksa.
Zamislimo li polje podataka kao tablicu onda prvi
indeks određuje redak,
a drugi
stupac.
Prvi
član polja ima indeks [0][0] a
posljednji indeks [(broj
redaka-1)][(broj stupaca-1)].
Primjer inicijalizacije vrijednosti elemenata polja u kodu:
int X[2][3]={ {1, 2, 3}, {4, 5, 6} };
Ako
pojedinim članovima nije
pridružena vrijednost,
pridružuje im se 0.
5. Primjeri dvodimenzionalnih nizova
1. primjer: Inicijalizacija, ispis i obrada podataka dvodimenzionalnog niza:
6. Nizovi znakova
Ako
je podatak znak,
njegova oznaka tipa je char, a ako je niz znakova onda je string.
Podatak
tipa char je
predstavljen jednim znakom unutar jednostrukih navodnika ili ASCII vrijednošću tog znaka (dekadska protuvrijednost).
char slovo1='A'; ili char slovo2=65;
Ako
je podatak tekst
(niz znakova) rabe
se znakovni nizovi (engl. character strings).
Znakovni
niz je jednodimenzionalno
polje čiji
su članovi
znakovi
(engl.
char).
Sadržaj
se u znakovni niz unosi između
para dvostrukih navodnika:
char znakovni_niz[ ]="Ovo je znakovni niz";
Svaki
znakovni niz završava zaključnim znakom '\0' (engl. null
character).
Taj znak ne treba posebno navoditi, ali treba znati da on zauzima jedno
mjesto u
memoriji.
7. Primjeri nizova znakova
1. primjer: Inicijalizacija i ispis dvodimenzionalnog niza znakova
2. primjer: Ispisivanje određenog stupca znakovnog niza