C ++ funkcije matrice - Inicijaliziranje C ++ matrice i višedimenzionalnog niza

Sadržaj:

Anonim

Što je C ++ funkcija matrice?

Znamo da bismo kasnije mogli koristiti bilo koju vrijednost, a trebamo je pohraniti u varijablu. Varijabla će imati referencu na memoriju u koju će se ta vrijednost pohraniti tako da je možemo koristiti kad god želimo. Slično tome, razmotrite i slučaj u kojem imamo stotine i tisuće takvih podataka koje je potrebno pohraniti u varijablu za buduće potrebe. Praktično nije moguće pohraniti sve ove vrijednosti u varijable jer ćemo za to morati stvoriti stotine i tisuće varijabli. Te se varijable neće lako pamtiti. U ovoj ćemo temi saznati više o funkcijama niza C ++.

Tako dolazi pojam niza. Niz je u osnovi zbirka koja može pohraniti onoliko predmeta koliko želimo dok ne budu iste vrste. Cijeli niz, niz znakova, decimalni niz, svi oni definiraju vrstu stavki spremljenih u nizu. To znači da će cijeli niz imati pohranjene samo cijele vrijednosti, niz znakova će imati znakove i tako dalje. Također, ove se vrijednosti pohranjuju na neprekidnu memoriju i mogu se pojedinačno pozivati ​​prema njihovoj indeksnoj vrijednosti. Vrijednost indeksa u nizu počinje od 0.

Razmotrimo slučaj cjelobrojnog niza s 3 elementa 10, 20, 30.

Nizovi su vrlo važan koncept strukture podataka koji implementira većina programskih jezika. C ++ također pruža niz koji je skup elemenata iste vrste fiksne veličine. Dvije osnovne stvari koje treba imati na umu tijekom deklariranja niza su veličina niza i vrsta matrice. Budući da se ove dvije stvari moraju deklarirati na samom početku tijekom deklariranja matriksa, niz je statične prirode. Veličina polja određuje broj elemenata koje može pohraniti.

Opća sintaksa deklaracije niza je -

Primjer -

int pincode_of_cities(50)

Veličina polja mora biti cijela konstantna vrijednost koja mora biti veća od 0. Vrsta matrice može biti bilo koji tip podataka koji vrijedi u C ++.

Inicijaliziranje niza C ++

Postoje dvije osnovne metode inicijalizacije niza -

1. metoda: u vrijeme deklaracije

int pincode(5) = (123, 000, 342, 678, 654);

ILI

int pincode() = (123, 000, 342, 678, 654);

2. metoda: Upotreba petlje

int number(5);
for(int i = 0; i number = i;
int number(5);
for(int i = 0; i number = i;

Ovo je jednodimenzionalni niz ili 1D polje. Druga vrsta matrice je višedimenzionalni niz o kojem ćemo govoriti malo kasnije.

Prije svega, pogledajmo kako možemo pristupiti vrijednostima s niza. Nekoliko od sljedećih metoda dano je u nastavku -

Pristup vrijednostima matrice

Naziv matrice (indeks): Vraća vrijednost na navedenu poziciju indeksa.

#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int main ()
(
cout << arr(3);
return 0;
)

Izlaz: 40

Kako biste ispisali sve vrijednosti u nizu -

#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int i;
int main ()
(
for ( i=0 ; i<5 ; i++ )
(
cout << arr(i);
)
return 0;
)

Izlaz: 1020304050

Primjer:

#include
using namespace std;
int main()
(
int num(5), sum = 0;
cout << "Enter 5 natural numbers: ";
// Store numbers
// Then find sum
for (int i = 0; i < 5; ++i)
(
cin >> num(i);
sum += num(i);
)
cout << "Sum = " << sum << endl;
return 0;
)

Izlaz:

Unesite 5 prirodnih brojeva: 10 20 30 40 50
Zbroj = 150

Višedimenzionalni niz

Navedeno je deklaracija za jednodimenzionalni niz. Druga vrsta matrice je višedimenzionalni niz, a poznata je i kao pravokutni niz u C ++. Ovisno o zahtjevu, to može biti dvodimenzionalni niz ili trodimenzionalni niz. Vrijednosti se pohranjuju u obliku tablice, poznata i kao matrica u obliku redova i stupaca.

Sintaksa za proglašavanje višedimenzionalnog niza je -

(number of rows)(number of columns) int two_dim(2)(2);

To znači da gornji niz ima -

  • 2 reda
  • 2 stupca

Gornji niz se može inicijalizirati na sljedeći način -

1. metoda:

#include
using namespace std;
int main()
(
int arr(3)(3) =
(
(1, 5, 15),
(44, 0, 23),
(29, 41, 85) ); //declaring and initializing at the same time
//traversing through the array
for(int i = 0; i < 3; ++i)
(
for(int j = 0; j < 3; ++j)
(
cout<< arr(i)(j)<<" ";
)
cout<<"\n"; //this will take to a new line once the all the columns of the //particular row has been traversed
)
return 0;
)

Izlaz:

1 5 15

44 0 23

29 41 85

2. metoda:

#include
using namespace std;
int main()
(
int arr(3)(3); //declaring a 2D array
arr(0)(0)=5; //initializing the array
arr(0)(1)=10;
arr(0)(2)=15;
arr(1)(0)=20;
arr(1)(1)=30;
arr(1)(2)=40;
arr(2)(0)=50;
arr(2)(1)=60;
arr(2)(2)=70;
//traversing through the elements in the array
for(int i = 0; i < 3; ++i)
(
for(int j = 0; j < 3; ++j)
(cout<< arr(i)(j)<<” ” ;
)
cout<<"\n"; //this will take to a new line once the all the columns of the //particular row has been traversed
)
return 0;
)

Izlaz:

5 10 15

20 20 40

50 60 70

Primjer:

#include
using namespace std;
const int city = 2;
const int week = 2;
int main()
(
int temp(city)(week);
cout << "Enter temp for city \n";
// Insert values
for (int i = 0; i < city; ++i)
(
for(int j = 0; j < week; ++j)
(
cout << "city " << i + 1 << ", Week Day " << j + 1 << " : ";
cin >> temp(i)(j);
)
)
// Access values
for (int i = 0; i < city; ++i)
(
for(int j = 0; j < week; ++j)
(
cout << "city " << i + 1 << ", Week Day " << j + 1 << " = " << temp(i)(j) << endl;
)
)
return 0;
)
Enter temp for city
city 1, Week Day 1 : 12
city 1, Week Day 2 : 24
city 2, Week Day 1 : 35
city 2, Week Day 2 : 47

Izlaz:

grad 1, Dan 1 = 12
grad 1, Dan 2 = 24
grad 2, Dan 1 = 35
grad 2, Dan 2 = 47

Preporučeni članci

Ovo je vodič za C ++ funkcije matrice. Ovdje smo raspravljali o inicijalizaciji C ++ matrice i višedimenzionalnog niza s metodama, primjerima i izlazom. Možete pogledati i sljedeći članak da biste saznali više -

  1. Zvjezdani uzorci u c ++
  2. Što je C ++
  3. Prednosti Array
  4. C # niz prema popisu
  5. Vodič za funkcije polja u C
  6. Višedimenzionalni niz u Pythonu
  7. Funkcije niza PHP | Vrste funkcija matrice u PHP-u