multidimensional arrays c
Ruolo della matrice multidimensionale in C ++ con esempi.
Fino ad ora, nei nostri tutorial precedenti, abbiamo visto tutto sugli array unidimensionali.
C ++ supporta anche array con più di una dimensione. Questi sono chiamati array multidimensionali. Gli array multidimensionali sono solitamente disposti in forma tabulare, ovvero in ordine di riga maggiore.
=> Cerca qui l'intera serie di formazione C ++.
Cosa imparerai:
Array multidimensionali in C ++
Considera una matrice multidimensionale di dimensioni 3 × 2, ovvero 3 righe e 2 colonne.
Rappresentiamo questo array come segue:
R1c1 | R2c2 |
R2c1 | R2c2 |
R3c1 | R3c2 |
Come mostrato nella rappresentazione sopra, ogni cella Per esempio. R1C1 manterrà il contenuto dell'array.
Il numero di elementi presenti in un array multidimensionale è il prodotto delle sue dimensioni. Ciò significa che se le dimensioni di una matrice sono 3 × 2, il numero di elementi in quella matrice è il prodotto di 3 e 2, ovvero 6. Allo stesso modo, se le dimensioni della matrice multidimensionale sono (10) (20) (10) quindi il numero di elementi in quell'array è 10 * 20 * 10 = 2000.
Un array bidimensionale è la forma più semplice dell'array multidimensionale utilizzato da C ++.
Dichiarazione di un array
Di seguito è mostrata la dichiarazione generale dell'array multidimensionale in C ++:
dataType arrayName (size1)(size2)….(sizen);
In questo caso, dataType è il tipo di dati dell'array. Il tipo di dati dovrebbe essere supportato da C ++.
arrayName è il nome dell'array multidimensionale.
Size1, size2… .sizen sono le dimensioni di ciascuna delle dimensioni dell'array.
Per esempio,dichiariamo un array di dimensioni 3 × 2, cioè un array bidimensionale, myarray_2d.
int myarray_2d (3)(2);
Un array bidimensionale è rappresentato sotto forma di righe e colonne.
Quindi la precedente dichiarazione dell'array può essere rappresentata come segue:
myarray_2d (0) (0) | myarray_2d (0) (1) |
myarray_2d (1) (0) | myarray_2d (1) (1) |
myarray_2d (2) (0) | myarray_2d (2) (1) |
Come mostrato nella rappresentazione sopra, si accede a ciascun elemento di un array bidimensionale come myarray_2d (i) (j) dove i è il numero di riga e varia da 0 a n-1 dove n è la dimensione della dimensione e j è la numero di colonna e varia da 0 a m-1 dove m è la dimensione della dimensione della colonna.
Inizializzazione di array multidimensionali
Possiamo inizializzare array multidimensionali simili agli array unidimensionali. Gli array multidimensionali vengono inizializzati per riga.
Ci sono due modi in cui possiamo inizializzare array multidimensionali.
# 1) Considera un array con dimensioni (3) (2) denominato myarray:
int myarray(3)(2) = {1, 2,3,4,5,6};
In questo caso, l'inizializzazione dell'array avviene da sinistra a destra in modo riga per riga. Poiché le dimensioni sono (3) (2), i primi due elementi formeranno la prima riga e così via.
La rappresentazione pittorica di questa inizializzazione apparirà come mostrato di seguito:
1 | Due |
3 | 4 |
5 | 6 |
# 2) Lo stesso array mostrato sopra può essere inizializzato usando un modo diverso come mostrato di seguito:
int myarray(3)(2) = { {1,2}, {3,4}, {5,6} };
Qui, l'inizializzazione viene eseguita da sinistra a destra e ogni elemento corrisponde a una riga. Poiché ci sono tre righe per questo array, abbiamo tre elementi interni racchiusi tra parentesi graffe ({}).
Questo modo di inizializzazione è più leggibile ed è vantaggioso quando le dimensioni dell'array aumentano.
Accesso agli array multidimensionali
Gli elementi della matrice multidimensionale sono accessibili utilizzando l'indice di riga e l'indice di colonna.
Vediamo un esempio di un array bidimensionale con dimensioni (3) (3). Di seguito è riportato il codice per inizializzarlo.
int newarray (3)(3) = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
Se voglio accedere al secondo elemento nella prima riga e assegnarlo a una variabile intera, la riga di codice sarà:
int val_2d = newarray(0)(1);
Di seguito è riportato un programma di esempio che mostra la dichiarazione, l'inizializzazione e l'accesso di un array bidimensionale.
#include using namespace std; int main() { int myarray(3)(3) = {{1,2,3},{4,5,6},{7,8,9}}; for(int i=0;i <3;i++) { for(int j=0;j<3;j++) { cout< Questo programma produce il seguente output:
1 2 3 4 5 6 7 8 9
Come mostrato nel programma precedente, viene dichiarato un array bidimensionale e quindi inizializzato. Quindi per accedere e stampare tutti gli elementi dell'array, abbiamo impostato due cicli for. Il ciclo for esterno consente di accedere agli elementi per riga. Il ciclo for interno funge da contatore per accedere agli elementi in ogni colonna.
domande e risposte del colloquio dell'help desk
In questo modo, accediamo a ogni elemento di questo array bidimensionale e lo visualizziamo sullo schermo.
Conclusione
Gli array multidimensionali possono avere un numero qualsiasi di dimensioni e all'aumentare del numero di dimensioni, aumenta anche la complessità di conseguenza.
Sebbene abbiamo utilizzato array bidimensionali in tutti gli esempi precedenti, possiamo codificare array con dimensioni più elevate in modo simile.
=> Fare clic qui per il corso C ++ gratuito.
Lettura consigliata
- Array in STL
- Utilizzo di array con funzioni in C ++
- Array C ++ con esempi
- Array VBScript: utilizzo delle funzioni DIM, REDIM, Split e Ubound Array
- Inserisci più documenti in MongoDB usando gli array
- Miglior serie di tutorial GRATUITI per C #: la guida definitiva a C # per principianti
- Java DataType, loop, array, switch e asserzioni
- Scripting shell Unix avanzato: array, operatori di test di file e stringhe, variabili speciali