Le matrici sono una struttura dati statica ed omogenea con due dimensioni. Come i vettori condividono la caratteristica di staticità (la grandezza della struttura dati non può essere modificata) e l’omogeneità (il tipo dei dati che contiene è lo stesso per ogni cella) ma hanno due dimensioni righe e colonne. Il termine matrice viene ereditato dal linguaggio matematico ( http://www.eserciziario.eu/matematica-2/matrici/ ): la matrice è una disposizione di numeri in righe e colonne.
Quando diciamo che una matrice è 3×4 indichiamo che ha tre righe e quattro colonne (cioè il primo numero rappresenta il numero di righe mentre il secondo quello delle colonne).
Implementazione
Per implementare in linguaggio C++ una matrice si usa la seguente sintassi:
int matrice[2][3];
Questa scrittura indica che stiamo dichiarando una matrice di interi con due righe e tre colonne. Inseriamo ora nelle varie celle della matrice tutti i valori mostrati precedentemente in figura:
matrice[0][0] = 1;
matrice[0][1] = -1;
matrice[0][2] = 2;
matrice[1][0] = 3;
matrice[1][1] = 2;
matrice[1][2] = 1;
Facciamo un altro esempio per capire bene come implementare le matrici volendo costruire la seguente struttura dati:
char m[2][4];
m[0][0] = 'a';
m[0][1] = 'd';
m[0][2] = 'g';
m[0][3] = 'd';
m[1][0] = 'd';
m[1][1] = 'v';
m[1][2] = 'd';
m[1][3] = 'a';
Vediamo ora delle implementazioni classiche di problemi sulle matrici:
- Stampa Matrice
- Carica Matrice
- Ricerca Matrice
Esercizi
Esercizio | Descrizione |
Ricerca in una matrice | |
Massimo di una matrice | |
Clessidre | Trova la somma massima fra le clessidre in una matrice |
Array Manipulation | Esegui un set di operazioni fissate per modificare un array |
Torna a Programmazione Strutturata