Kaj je funkcija matrike C ++?
Vemo, da za kasnejšo uporabo katere koli vrednosti jo moramo shraniti v spremenljivko. Spremenljivka se bo sklicevala na pomnilnik, v katerem bo ta vrednost shranjena, tako da jo bomo lahko uporabljali kadarkoli bomo želeli. Podobno razmislite o primeru, ko imamo na stotine in tisoče takih podatkov, ki jih je treba shraniti v spremenljivko za nadaljnjo uporabo. Vse te vrednosti praktično ni mogoče shraniti v spremenljivke, saj bomo morali zanjo ustvariti sto in tisoč spremenljivk. Teh spremenljivk si niti ne bo enostavno zapomniti. V tej temi bomo spoznali funkcije C ++ Array.
Tako nastane koncept matrike. Niz je v bistvu zbirka, ki lahko shrani toliko elementov, kot jih želimo, dokler niso iste vrste. Celoten niz, niz znakov, decimalna matrika, vsi ti definirajo vrsto elementov, shranjenih v matriki. To pomeni, da bo imel celoštevilčni niz shranjene samo cele številke, znakovni niz bo imel znake in tako naprej. Te vrednosti so tudi shranjene na neprekinjenem pomnilniškem mestu in se lahko posamezno sklicujejo na njihovo indeksno vrednost. Vrednost indeksa v matriki se začne od 0.
Razmislite o primeru celega niza s 3 elementi 10, 20, 30.
Matrike so zelo pomemben koncept strukture podatkov, ki ga izvaja večina programskih jezikov. C ++ ponuja tudi matriko, ki je skupek elementov iste vrste fiksne velikosti. Dve osnovni stvari, ki ju morate upoštevati pri razglasitvi matrike, sta velikost in vrsta matrike. Ker je treba te dve stvari deklarirati na samem začetku med deklariranjem matrike, je matrika statične narave. Velikost matrike določa število elementov, ki jih lahko shrani.
Splošna sintaksa izjave matrike je -
Primer -
int pincode_of_cities(50)
Velikost matrike mora biti celoštevilčna konstantna vrednost, ki mora biti večja od 0. Tip matrike je lahko kateri koli podatkovni tip, veljaven v C ++.
Inicializacija matrike C ++
Obstajata dva osnovna načina inicializacije matrike -
1. metoda: Ob deklaraciji
int pincode(5) = (123, 000, 342, 678, 654);
ALI
int pincode() = (123, 000, 342, 678, 654);
2. način: Uporaba zanke
int number(5);
for(int i = 0; i number = i;int number(5);
for(int i = 0; i number = i;
To je enodimenzionalni niz ali 1D matrika. Druga vrsta matrike je večdimenzionalni niz, o katerem bomo razpravljali malo kasneje.
Najprej si oglejmo, kako lahko dostopamo do vrednosti iz matrike. Spodaj je podanih nekaj naslednjih metod -
Dostop do vrednosti matrike
Ime matrike (indeks): To bo vrnilo vrednost na omenjenem položaju indeksa.
#include
using namespace std;
int arr(5) = (10, 20, 30, 40, 50);
int main ()
(
cout << arr(3);
return 0;
)
Izhod: 40
Če želite natisniti vse vrednosti v matriki -
#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;
)
Izhod: 1020304050
Primer:
#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;
)
Izhod:
Vnesite 5 naravnih številk: 10 20 30 40 50
Vsota = 150
Večdimenzionalni niz
Zgoraj je izjava za enodimenzionalni niz. Druga vrsta matrike je večdimenzionalni niz in je znana tudi kot pravokotni nizi v C ++. Glede na zahtevo je lahko dvodimenzionalni niz ali tridimenzionalni niz. Vrednosti so shranjene v obliki tabele, znane tudi kot matrica v obliki vrstic in stolpcev.
Sintaksa za razglasitev večdimenzionalnega niza je -
(number of rows)(number of columns) int two_dim(2)(2);
To pomeni, da ima zgornji niz -
- 2 vrstici
- 2 stolpca
Zgornji niz se lahko inicializira na naslednji način -
1. način:
#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;
)
Izhod:
1 5 15
44 0 23
29 41 85
2. način:
#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;
)
Izhod:
5 10 15
20 20 40
50 60 70
Primer:
#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
Izhod:
mesto 1, 1. teden = 12
mesto 1, 2. teden 2 = 24
mesto 2, 1. teden = 35
mesto 2, 2. teden = 47
Priporočeni članki
To je vodnik za funkcije matrike C ++. Tukaj razpravljamo o inicializaciji matrike C ++ in večdimenzionalne matrike z metodami, primeri in izhodi. Če želite izvedeti več, si oglejte tudi naslednji članek -
- Zvezdni vzorci v c ++
- Kaj je C ++
- Prednosti Array
- C # Array proti seznamu
- Vodnik za funkcije matrike v C
- Večdimenzionalni niz v Pythonu
- Funkcije matrike PHP | Vrste funkcij matrike v PHP