Niz je sekvencijalna zbirka elemenata istog tipa podataka. Spremljeni su sekvencijalno u memoriju. Niz je struktura podataka koja sadrži elemente slične vrste. Elementi niza se u c ++-u ne tretiraju kao objekti kao u javi. U ovom ćemo članku razgovarati o Nizovima u C ++.
Nizovi u C ++
Zamislite da ste u trgovini glazbenih ploča i kažem vam da sve ploče složite pod oznakom XYZ Records na jednom mjestu jedno iznad drugog. Ova sekvencijalna zbirka zapisa može se nazvati nizom. Niz je sekvencijalna kolekcija elemenata istog tipa podataka. U našem primjeru gore, XYZ Records je vrsta podataka i svi zapisi koje ste prikupili imaju iste izdavače. Svi se elementi u nizu obraćaju zajedničkim imenom.
Ovaj članak o Nizovima na C ++ usredotočit će se na ove osnovne pokazivače,
- Jednodimenzionalni niz
- Inicijalizacija tijekom deklaracije
- Inicijalizacija od strane korisnika
- Pristup nizu u bilo kojem trenutku
- Višedimenzionalni niz
Krenimo od razumijevanja što su jednodimenzionalni nizovi,
Jednodimenzionalni niz
Sintaksa za proglašenje a Jednodimenzionalni niz:
Imamo tip podataka koji može biti bilo koji od osnovnih tipova podataka poput int, float ili double. Array Name je ime niza i mi deklariramo veličinu niza.U našem gornjem primjeru niz će biti,
XYZ Record recordArray [100]
Razmotrimo još jedan primjer:
int test [20]
Test niza sadržavat će elemente tipa int i imat će veličinu 20.
Nizovi na C ++: Veličina polja
Veličina polja daje se u trenutku deklaracije niza. Jednom kada je data veličina polja, ne može se mijenjati. Prevodnik zatim raspoređuje toliko prostora memorije za niz.
Razmotrite Primjer
int test [20]
U gornjem primjeru imamo test niza, tipa int. Dali smo veličini niza 20. To znači da će 20 uzastopnih memorijskih mjesta ostati slobodno za niz u memoriji.
Indeks niza i inicijalizacija
Broj pridružen svakom položaju u nizu i taj se broj naziva indeks niza . Počinje od 0 do zadnjeg elementa, to je veličina polja minus jedan. Minus jedan je tu jer počinjemo brojati od nule, a ne od jedan. Indeksi nizova uvijek počinju od nule.
Razmotrite ovaj primjer, ovo je niz godina.
Vrijednost niza | 12 | 41 | 03 | 13 | 07 |
Indeksi polja što su podaci u znanosti | 0 | jedan | 2 | 3 | 4 |
Ovdje niz sadrži vrijednosti 12,41,3,13,7, a indeksi su 0,1,2,3,4,5. Ako želimo prikazati element u indeksu 4, on će biti predstavljen kao dob [4] i prikazat će se vrijednost 7.
Prema zadanim postavkama niz sadrži sve nulte vrijednosti.Inicijalizacija niza vrši se u vrijeme deklaracije. To se može provesti i kasnije ako korisnik unese vrijednost polja prema potrebi i kada je to potrebno.
Pogledajmo kako inicijalizacija djeluje tijekom deklaracije,
Inicijalizacija tijekom deklaracije
Niz se može inicijalizirati tijekom deklaracije. To se postiže specificiranjem elemenata niza u trenutku deklaracije. Ovdje je veličina niza također fiksna i o njoj odlučujemo mi.
Razmotrite kod,
#include using namespace std int main () {int arr [] = {10, 20, 30, 40} return 0}
Obrazloženje
U gornjem primjeru kreiramo niz tipa int i s imenom arr. Izravno određujemo elemente niza. O veličini polja odlučuje se brojanjem broja elemenata u našem nizu. U ovom je slučaju veličina 4.
Sljedeće u ovom članku o Nizovima na C ++-u omogućuje nam da vidimo kako funkcionira inicijalizacija od strane korisnika
Inicijalizacija od strane korisnika
Ovom metodom dopuštamo korisniku da odluči veličinu niza. U ovom slučaju trebamo varijablu koja će sadržavati veličinu niza i petlju for za prihvaćanje elemenata niza. U trenutku izjave dodijeljujemo slučajnu veličinu i koristimo je samo po potrebi. Veličina na početku je obično na višoj strani. Imamo varijablu i za kontrolu for petlje.
Razmotrimo primjer,
#include using namespace std int main () {int arr [50], n, i cout<<'Enter the size of array:'<>n trošak<<'Enter the elements of array:'<arr [i]} povratak 0}
Izlaz
Obrazloženje
U gornjem programu deklariramo niz veličine 50. Zatim tražimo od korisnika da unese broj elemenata koje želi unijeti u taj niz. Tada prihvaćamo elemente niza koje je korisnik unio.
Nizovi u C ++: Prikazivanje niza
Prikazivanje niza također zahtijeva for-loop. Prelazimo do cijelog niza i prikazujemo elemente niza.
Evo primjera,
#include using namespace std int main () {int arr [50], n, i cout<<'Enter the size of array:'<>n trošak<<'Enter the elements of array:'<arr [i]} trošak<<'Array elements are:'< Izlaz
Obrazloženje
U gornjem programu deklariramo niz veličine 50. Zatim tražimo od korisnika da unese broj elemenata koje želi unijeti u taj niz. Tada prihvaćamo elemente niza koje je korisnik unio. Zatim ponovno koristimo for petlju za prikaz elemenata niza.
Nastavljajući s ovim nizovima u članku C ++,
Pristup nizu u bilo kojem trenutku
Pristup elementima niza je jednostavan i vrši se pomoću indeksa niza. Pogledajte kod u nastavku.
#include using namespace std int main () {int arr [5], i arr [4] = 2 arr [2] = 17 arr [0] = 17 cout<<'Array elements are:'<Izlaz
Obrazloženje
U gornjem programu imamo niz veličine 5. Unosimo elemente na različita mjesta pomoću indeksa niza. Ispisujemo niz da bismo dobili gornji izlaz.
Prema zadanim postavkama svi elementi niza su nula.
Što će se dogoditi ako prijeđemo veličinu polja?
Java programer plata u IndijiAko u c ++-u pokušamo pristupiti elementima izvan veza, prevoditelj možda neće prikazati pogrešku, ali nećemo dobiti ispravan izlaz.
To nas dovodi do završnog bita ovih nizova u članku C ++,
Višedimenzionalni niz
Nizovi nizova su višedimenzionalni nizovi. To je zato što svaki element u višedimenzionalnom nizu ima svoj vlastiti niz. Trebamo n za petlje da se prevlače kroz višedimenzionalni niz, ovisno o dimenzijama.
Sintaksa za deklariranje višedimenzionalnih nizova
Naziv polja tipa podataka [veličina1] [veličina2] i hellip .. [veličina n]int a [10] [20]Razmotrimo primjer,
Veličina gornjeg niza bit će 10 * 20, odnosno 200 elemenata.Slično tome, možemo imati dva ili tri ili čak više dimenzionalnih nizova.Svaka dimenzija zahtijeva jednu for petlju. Dakle, dvodimenzionalni niz zahtijeva dvodimenzionalni niz zahtijeva tri.
Razmotrite kod
#include koristeći prostor imena std int main () {int arr [3] [2] = {{0,1}, {2,3}, {4,5}} za (int i = 0 i<3 i++) { for (int j = 0 j < 2 j++) { cout << 'Element:' cout <Izlaz
Obrazloženje
U gornjem kodu prikazujemo matricu 3 * 2. Ovaj niz ima 3 retka i 2 stupca. Imamo 2 za petlje. Svaki odgovoran za jednu dimenziju niza. Vanjska for petlja brine se za retke, a unutarnja za stupce.
Slično tome, možemo napisati kod za trodimenzionalni niz i bit će ih tri za petlje, a svakom će dimenzijom upravljati jedna za petlju.
Tako smo došli do kraja ovog članka o 'Nizovima u C ++'. Ako želite saznati više, pogledajte Edureka, pouzdane tvrtke za internetsko učenje. Edurekin tečaj za obuku i certificiranje Java J2EE i SOA osmišljen je kako bi vas osposobio za osnovne i napredne Java koncepte zajedno s raznim Java okvirima poput Hibernate & Spring.
Imate pitanje za nas? Molimo vas da ga spominjete u odjeljku za komentare ovog bloga i javit ćemo vam se što je prije moguće