Cum se implementează matrici în C ++?



Acest articol despre matrice în C ++ vă va ajuta să înțelegeți tot ce există pentru a ști despre matricele unidimensionale și multidimensionale în C ++

Un Array este o colecție secvențială de elemente, de același tip de date. Acestea sunt stocate secvențial în memorie. O matrice este o structură de date care conține tipuri similare de elemente. Elementele matrice nu sunt tratate ca obiecte în c ++, așa cum sunt în java. În acest articol vom discuta Arrays In C ++.

Matrice în C ++

Imaginați-vă că sunteți la un magazin de discuri muzicale și vă spun să aranjați toate înregistrările sub eticheta XYZ Records la un loc unul deasupra celuilalt. Această colecție secvențială de înregistrări poate fi numită Array. O matrice este o colecție secvențială de elemente de același tip de date. În exemplul nostru de mai sus, XYZ Records este tipul de date și toate înregistrările pe care le-ați colectat au aceiași editori. Toate elementele dintr-o matrice sunt adresate printr-un nume comun.





Acest articol despre matrici în C ++ se va concentra pe acești indicatori de bază,

Să începem prin a înțelege ce sunt tablourile unidimensionale,



Matrice unidimensională

Sintaxa pentru declararea a Matrice unidimensională:

Avem un tip de date care poate fi oricare dintre tipurile de date de bază, cum ar fi int, float sau double. Numele matricei este numele matricei și declarăm dimensiunea matricei.În exemplul nostru de mai sus, matricea va fi,

XYZ Record recordArray [100]

Să luăm în considerare un alt exemplu:



test int [20]

Testul matrice va conține elementele de tip int și va avea dimensiunea 20.

Matrice în C ++: dimensiunea matricei

Dimensiunea matricei este dată în momentul declarării matricei. Odată ce dimensiunea matricei este dată, aceasta nu poate fi modificată. Compilatorul alocă atunci mult spațiu de memorie matricei.

Luați în considerare exemplul

test int [20]

În exemplul de mai sus, avem un test de matrice, de tip int. Am dat dimensiunea matricei să fie 20. Aceasta înseamnă că 20 de locații consecutive de memorie vor fi lăsate libere pentru matricea din memorie.

Array Index și inițializare

Un număr asociat fiecărei poziții dintr-o matrice și acest număr se numește indicele matrice . Începe de la 0 și până la ultimul element, adică dimensiunea matricei minus unul. Minusul unu este acolo pentru că începem să numărăm de la zero și nu unul. Indicii matrice încep întotdeauna de la zero.

Luați în considerare acest exemplu, acesta este matricea de vârstă.

Valoare matrice 1241031307

Indici de matrice

tutorial sql și pl sql

0

unu

2

3

4

Aici matricea conține valorile 12,41,3,13,7 și indicii sunt 0,1,2,3,4,5. Dacă dorim să reprezentăm un element la indexul 4, acesta este reprezentat ca vârstă [4] și va fi afișată valoarea 7.

În mod implicit, matricea conține toate valorile zero.Inițializarea matricei se face în momentul declarării. Acest lucru poate fi efectuat și ulterior dacă utilizatorul introduce valoarea matricei atunci când este necesar.

Să vedem cum funcționează inițializarea în timpul declarației,

Inițializare în timpul declarației

Un tablou poate fi inițializat în timpul declarației. Acest lucru se face prin specificarea elementelor matricei în momentul declarării. Aici dimensiunea matricei este de asemenea fixă ​​și este decisă de noi.

Luați în considerare codul,

#include folosirea spațiului de nume std int main () {int arr [] = {10, 20, 30, 40} return 0}

Explicaţie

În exemplul de mai sus, creăm o matrice de tip int și cu numele arr. Specificăm direct elementele matricei. Mărimea tabloului se decide numărând numărul de elemente din tabloul nostru. În acest caz, dimensiunea este de 4.

În acest articol despre matrici în C ++ ne permite să vedem cum funcționează inițializarea de către un utilizator

Inițializarea de către un utilizator

În această metodă, lăsăm utilizatorul să decidă dimensiunea matricei. În acest caz, avem nevoie de o variabilă pentru a menține dimensiunea matricei și de o buclă for pentru a accepta elementele matricei. Atribuim o dimensiune aleatorie în momentul declarației și o utilizăm numai după cum este necesar. Mărimea la început este de obicei la partea superioară. Avem o variabilă i pentru a controla bucla for.

Luați în considerare exemplul,

#includeți utilizarea spațiului de nume std int main () {int arr [50], n, i cout<<'Enter the size of array:'<>n cost<<'Enter the elements of array:'<arr [i]} returnează 0}

Ieșire

Ieșire - Matrice în C ++ - Edureka

Explicaţie

În programul de mai sus, declarăm o matrice de dimensiunea 50. Atunci îi cerem utilizatorului să introducă numărul de elemente pe care dorește să le introducă în această matrice. Acceptăm apoi elementele matrice introduse de utilizator.

Matrice în C ++: Afișarea matricei

Afișarea matricei necesită, de asemenea, for-loop. Trecem la întreaga matrice și afișăm elementele matricei.

Iată un exemplu,

#includeți utilizarea spațiului de nume std int main () {int arr [50], n, i cout<<'Enter the size of array:'<>n cost<<'Enter the elements of array:'<arr [i]} cost<<'Array elements are:'<

Ieșire

Explicaţie

În programul de mai sus, declarăm o matrice de dimensiunea 50. Atunci îi cerem utilizatorului să introducă numărul de elemente pe care dorește să le introducă în această matrice. Acceptăm apoi elementele matrice introduse de utilizator. Apoi folosim din nou o buclă for pentru a afișa elementele matricei.

Continuând cu aceste matrici în articolul C ++,

Accesarea matricei în orice moment

Accesarea elementelor matrice este simplă și se face utilizând indexul matricei. Aruncați o privire la codul de mai jos.

#includeți utilizarea spațiului de nume std int main () {int arr [5], i arr [4] = 2 arr [2] = 17 arr [0] = 17 cout<<'Array elements are:'<

Ieșire

Explicaţie

În programul de mai sus, avem o matrice de dimensiunea 5. Intrăm elemente în locații diferite folosind indexul matricei. Imprimăm matricea pentru a obține rezultatul de mai sus.

În mod implicit, toate elementele matricei sunt zero.

Ce se întâmplă dacă traversăm dimensiunea matricei?

În c ++, dacă încercăm să accesăm elementele în afara limitelor, este posibil ca eroarea să nu fie afișată de compilator, dar nu vom obține o ieșire adecvată.

Acest lucru ne aduce la ultima parte a acestor matrice din articolul C ++,

Matrice multidimensională

Tablourile de tablouri sunt tablouri multidimensionale. Acest lucru se datorează faptului că fiecare element dintr-o matrice multidimensională are o matrice proprie. Avem nevoie de n pentru bucle pentru a itera printr-o matrice multidimensională în funcție de dimensiuni.

Sintaxă pentru declararea matricilor multidimensionale

Tip de date arrayname [size1] [size2] & hellip .. [size n]
int a [10] [20]

Luați în considerare exemplul,

Dimensiunea matricei de mai sus va fi de 10 * 20, adică 200 de elemente.În mod similar, putem avea două sau trei sau chiar mai multe tablouri dimensionale.Fiecare dimensiune necesită una pentru buclă. Deci, matricea bidimensională necesită matrice bidimensională și tridimensională necesită trei.

metodele de clasă a scanerului vă permit

Luați în considerare codul

#include using namespace std int main () {int arr [3] [2] = {{0,1}, {2,3}, {4,5}} for (int i = 0 i<3 i++) { for (int j = 0 j < 2 j++) { cout << 'Element:' cout < 

Ieșire

Explicaţie

În codul de mai sus, afișăm o matrice 3 * 2. Această matrice are 3 rânduri și 2 coloane. Avem 2 pentru bucle. Fiecare responsabil pentru o dimensiune a matricei. Bucla exterioară are grijă de rânduri și interiorul coloanelor.

În mod similar, putem scrie un cod pentru matricea tridimensională și vor fi trei pentru bucle și fiecare dimensiune va fi controlată de una pentru buclă.

Astfel am ajuns la sfârșitul acestui articol despre „Matrice în C ++”. Dacă doriți să aflați mai multe, consultați de Edureka, o companie de învățare online de încredere. Cursul de formare și certificare Java J2EE și SOA Edureka este conceput pentru a vă instrui atât pentru conceptele Java de bază, cât și pentru cele avansate Java, împreună cu diverse cadre Java, cum ar fi Hibernate & Spring.

Ai o întrebare pentru noi? Vă rugăm să o menționați în secțiunea de comentarii a acestui blog și vă vom contacta cât mai curând posibil