Array multidimensionale

Un array multidimensionale è un vettore i cui elementi sono a loro volta degli array, che a lora volta possono essere degli array multidimensionali.

Quindi i vettori che abbiamo visto in precedenza sono monodimensionali.

Invece ad esempio i vettori di vettori sono bidimensionali; i vettori di vettori di vettori sono tridimensionali, ecc…
In genere, sebbene non vi sia alcun limite, non si utilizzano più di tre dimensioni.

Sintassi – array multidimensionale

La sintassi è la seguente:

<TipoElementi><NomeArray>[<Costante>]…[<Costante>];

Il numero dei valori Costante coincide con il numero di dimensioni del vettore.

Una matrice ad esempio richiede due costanti, un vettore tridimensionale richiede tre costanti e così via.

Facciamo degli esempi:

vettore – int a[M]

matrice – int a[M][N]

vettore tridimensionale int a[M][N][P]

Rappresentazione di una matrice

Per rappresentare una matrice facciamo riferimento ad una tabella in cui il primo indice rappresenta la riga, il secondo la colonna.

<TipoElementi><NomeArray>[<Righe>] [ <Colonne>]

dove righe e colonne indicano rispettivamente il numero di righe e di colonne della matrice.

Guardiamo questa matrice di esempio, ho omesso gli indici di riga e colonna.

1221334467
16115834
2324586
1147183
1793478

In questa matrice il numero 8, in grassetto è l’elemento (2,3) cioè di riga 2 e colonna 3 (ricordiamo che gli indici di riga e di colonna partono da 0). L’ultimo numero, 78, sarà l’elemento (4,4) cioè di riga e colonna 4.

Quindi si può accedere ad un singolo elemento di un array bidimensionale usando i doppi indici (per righe e colonne).
Ad esempio A[2][3] seleziona il quarto elemento della terza riga.

Se invece utilizziamo un solo indice, ad esempio A[2], selezioniamo tutta la terza riga, che rappresenta un array monodimensionale.

Facciamo alcuni esempi di array bidimensionali:

int a[20][30];

float a[M][N];

char a[2][3]={{‘a’, ‘b’, ‘c’},{‘d’, ‘e’, ‘f’}}

Alcuni link utili:

Somma elementi diagonale principale di una matrice

Somma elementi cornice esterna

Sommare due matrici

Sommare i numeri di una matrice

Matrice trasposta

Prodotto tra matrici

Ricerca elementi in una matrice

Inserire dati in una matrice

Tavola pitagorica in C

Programma sui triangoli in C

Media dei numeri in un array

Array con numeri random

Quick sort in C

Selection sort in C

Merge sort in C

Insertion Sort in C

Autore dell'articolo: cristina

Avatar per Coding Creativo

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *