[↩ Nazad na sadržaj](../README.md) # Uvod u nizove Do sada, ako ste hteli da deklarišete 5 promenljivih, morali biste da uradite nešto poput: ```c++ int i_1,i_2,i_3,i_4,i_5; ``` Šta da ste hteli da deklarišete 100 promenljivih? To bi potrajalo. I zašto bismo uopšte hteli da ikad imamo 100 promenljivih? Zamislite situaciju u kojoj pravimo program koji treba da analizira temperature u prethodnoj godini, i za njegov rad je potrebno sačuvati prosečne dnevne temperature za svaki dan u toj godini. Praviti 365 * 2 promeljivih očigledno nije dobro rešenje, i nama u pomoć tu dolaze nizovi (eng. *array*). Uz pomoć nizova možemo sačuvati veliki broj podataka u samo jednoj promeljivoj, to jest da ti podaci imaju zajedničko ime. Na primer: ```c++ int temperature[365]; ``` U ovom slučaju promeljiva `temperature` čuva 365 vrednoti tipa `int`, i njih možemo postavljati ili očitavati korišćenjem kvadratnih zagrada: ```c++ temperature[0] = -2; temperature[1] = +1; temperature[2] = +4; ``` Svaki podatak u nizu ima svoj redni broj, pri čemu odbrojavanje kreće od nule. U primeru gore vrednost u `temperature[0]` bi zapravo odgvarala prvom januaru, i postavili smo tu vrednost na -2. Dakle, prosečna temperature u prva 3 dana u toj godini bi na primer mogla da se izračuna po formuli: ```c++ double prosek = (temperature[0] + temperature[1] + temperature[2]) / 3.0; ``` ## Korišćenje nizova uz pomoć petlji Kako niz služi za čuvanje velikog broja podataka, i kako svaki od njih ima svoj redni broj; najčešći način baratanja nizovima je unutar petlji. Temperature u mesecu januaru možemo da ispišemo tako što pristupimo 31-om elementu niza, od 0-og do 30-og (još jednom, odbrojavanje kreće od 0!): ```c++ cout << "Temperature u januaru su:" << endl; for(int dan = 0; dan < 31; dan++) { cout << temperature[dan] << endl; } ``` --- Naravno, ovaj primer neće da radi ukoliko ne popunimo niz sa pravim vrednostima, pa u nastavku dajemo primer programa koji niz od 10 elemenata popunjava kvadratima brojeva od 0 do 9, i zatim ispisuje njegove elemente: ```c++ #include using namespace std; int main() { int kvadrati[10]; for (int i = 0; i < 10; i++) { kvadrati[i] = i * i; } for (int i = 0; i < 10; i++) { cout << i << ". broj u nizu je " << kvadrati[i] << endl; } return 0; } ``` Kada ga pokrenemo, ovaj program ispisuje: ``` 0. broj u nizu je 0 1. broj u nizu je 1 2. broj u nizu je 4 3. broj u nizu je 9 4. broj u nizu je 16 5. broj u nizu je 25 6. broj u nizu je 36 7. broj u nizu je 49 8. broj u nizu je 64 9. broj u nizu je 81 ```