Array di array in C ++

Array di array in C ++
Un array di array, noto anche come array bidimensionale, è una struttura di dati in C ++ che consente di archiviare più array di dati in un formato. A differenza di un array unidimensionale, che memorizza i dati in una singola riga, un array bidimensionale può archiviare i dati in più righe e colonne. Ogni elemento nell'array è esso stesso un array, con un numero fisso di elementi che corrisponde al numero di colonne nell'array.

Gli array bidimensionali possono essere utili per archiviare dati che hanno più dimensioni o che sono organizzati in una tabella o in una griglia. Ad esempio, è possibile utilizzare un array bidimensionale per archiviare i voti per un gruppo di studenti, con ogni riga che rappresenta uno studente diverso e ogni colonna che rappresenta un compito o un esame diverso.

Dichiarazione di array multidimensionale in c++

Per dichiarare un array di array in C ++, è necessario utilizzare la seguente sintassi:

In questa sintassi, Data_Type si riferisce al tipo di dati che viene archiviato nell'array. L'array_name è il nome dell'array. I num_rows sono il numero di righe nell'array. E num_cols sono il numero di colonne nell'array.

Diversi modi per dichiarare gli array multidimensionali in c++

Usiamo un array di tipo intero in modo da poter comprendere facilmente il funzionamento degli array in C ++ e come mettiamo i dati in righe e colonne di array. Il programma che segue dichiara una serie di array di interi. Crea un array 3 × 3 di griglia di nome che è un tipo di numero intero:

Int Grid [3] [3];

Come abbiamo appreso nella sintassi precedente, 3 × 3 significa che ci sono 3 righe e 3 colonne nell'array. Ad esempio: vogliamo assegnare il valore che è 25 all'elemento nella seconda riga e terza colonna dell'array di griglia.

griglia [1] [2] = 25;

Ciò imposta il valore dell'elemento nella seconda riga e terza colonna che ha un indice basato su zero di 1 e 2, rispettivamente, a 25. Puoi anche inizializzare un array di array quando lo dichiari. Ad esempio, il seguente codice dichiara e inizializza una griglia 2 × 2 di caratteri:

Char Board [2] [2] = 'x', 'o',
'BUE';

Questo crea un array 2 × 2 di nome "Board" che contengono i caratteri con i valori "X", "O", "O" e "X". Per iterare su una serie di array, utilizzeremo i loop.

Esempio 1: dimostrare una matrice multidimensionale di tipo intero

Ecco il primo semplice esempio di array multidimensionali in c++. In questo esempio, includiamo innanzitutto i file di intestazione di base che sono utili per ottenere l'input e stampare l'output sulla finestra della console utente. Quindi, iniziamo la funzione principale () in modo da poter dimostrare facilmente il funzionamento di array multidimensionali.

Innanzitutto, inizializziamo un array di tipo int del nome "griglia" che contiene 3 righe e 3 colonne in esso. Quindi, archiviamo alcuni dati nella griglia. Per ottenere i dati dall'array di griglia, utilizziamo un per loop che funziona in modo iterativo per stampare tutti i dati della griglia nella schermata di output.

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

Int Grid [3] [3] = 1, 4, 7,
2, 5, 8,
3, 6, 9;
per (int i = 0; i < 3; ++i)

per (int j = 0; j < 3; ++j)

cout << grid[i][j] << " ";

cout << endl;

Questo codice stampa il seguente output:

Esempio 2: Dimostrare la disposizione dei posti a sedere di un cinema attraverso gli array multidimensionali in C++

Ecco un altro esempio di un array di array in c++. Supponiamo di voler conservare la disposizione dei posti a sedere di un cinema in cui ogni posto può essere vuoto o occupato. Possiamo utilizzare un array bidimensionale per archiviare questi dati, con ogni riga che rappresenta una riga di sedili diversa e ogni colonna che rappresenta un posto diverso in quella riga. Dichiariamo un array bidimensionale chiamato "posti a sedere" con 5 file e 10 colonne.

Una riga separata di sedile è rappresentata da ogni riga e un posto diverso all'interno di quella riga è rappresentato da ogni colonna. Inizializziamo l'array con alcuni dati di esempio in cui 0 rappresenta un posto vuoto e 1 rappresenta un sedile occupato. Per accedere a un posto specifico, possiamo utilizzare l'indice di riga e colonna di quel posto.

Ad esempio, per verificare se il sedile nella terza riga e la quinta colonna sono vuoti, utilizziamo l'istruzione IF-ELSE. Ad esempio: sedili [2] rappresenta la terza riga dell'array che contiene la disposizione dei posti per la terza fila di posti. Posti [2] [4] rappresenta il quinto elemento della terza riga che è il sedile nella terza riga e nella quinta colonna.

Quindi, utilizziamo il per loop che ripete ripetutamente sugli articoli dell'array e eseguono tutte le operazioni necessarie su ciascun posto.

#includere
#includere
Utilizzo dello spazio dei nomi std;
int main ()

Int Seating [5] [10] = 0, 0, 0, 1, 1, 1, 1, 0, 0, 0,
0, 1, 1, 1, 1, 1, 1, 1, 1, 0,
0, 1, 1, 0, 0, 0, 0, 1, 1, 0,
1, 1, 0, 0, 0, 0, 0, 0, 1, 1,
1, 1, 0, 0, 0, 0, 0, 0, 1, 1;
Int SeatStatus = sedili [2] [4];
if (SeaTStatus == 0)
cout << "Seat is empty" << endl;
altro
cout << "Seat is occupied" << endl;

int OccupiedSeats = 0;
per (int i = 0; i < 5; i++)
per (int j = 0; j < 10; j++)
if (sedili [i] [j] == 1)
OccupiedSeats ++;



cout << "There are " << occupiedSeats << " occupied seats." << endl;

In questa illustrazione, il ciclo interno e il ciclo esterno iterano alternativamente su ogni riga nell'array. L'istruzione if (sedili [i] [j] == 1) all'interno dei controlli del ciclo interno se il sedile corrente è occupato. In tal caso, incrementa il contatore del sedile occupato. Alla fine dei loop, il programma emette il numero totale di seggi occupati. Ecco l'output che viene generato compilando il programma precedente:

Conclusione

Abbiamo appreso che un array di array è una struttura di dati che contiene più array all'interno di un singolo array, consentendo la rappresentazione dei dati in una struttura simile a una matrice. Abbiamo anche imparato come creare strutture di dati più complesse come tabelle o cubi di dati. Sebbene possano essere potenti, lavorare con array di array può anche essere più complesso e richiedere una buona comprensione della sintassi e dei metodi. Ecco perché abbiamo implementato più esempi in modo da poter comprendere facilmente i concetti.