Matrici

Nel linguaggio C++ una matrice viene dichiarata secondo la seguente sintassi:
tipo nome_matrice [ const1 ] [const2 ];
Se per esempio volessimo dichiarare una matrice di nome MAT formata da un massimo di 20 righe e 30 colonne in grado di contenere numeri interi, scriveremmo:
int MAT [ 20 ] [ 30 ];
oppure
const int N1=20; const int N2=30;
int MAT [ N1 ] [ N2 ];

Come per i vettori, la numerazione delle righe e delle colonne parte da zero.
Per caricare una matrice è necessario utilizzare due cicli annidati: si può procedere per righe o per colonne. Nel C++ si possono utilizzare varie strutture iterative ( while,for ), l’importante è far scorrere gli elementi della matrice.
E’ fondamentale ricordare che le operazioni di caricamento e visualizzazione degli elementi della matrice sono procedure nell’ambito della programmazione complessa, poiché non restituiscono nessun valore di ritorno bensì sono porzioni di codice autonome eseguite mediante chiamata per nome. Inoltre il C++ richiede di conoscere almeno il numero di colonne, altrimenti non la riconoscerà come matrice ( non basta inserire le doppie parentesi quadre ). Il passaggio dei parametri avviene per referenza, anche se non è necessario utilizzare il simbolo & in quanto le variabili strutturare in C++ sono viste come puntatori per cui vengono passate automaticamente per referenza.

void CaricaMatrice ( int MAT [] [ NC ] )  {
     int i, j;
     for ( i=0; i<NR; i++ ) {
              for ( j=0; j<NC; j++ ) {
                  cout<<“Inserisci elemento matrice”<<endl;
                  cin>>MAT [ i ][ j ];
              }
       }
}

Array

Array ( vettore)
Definizione. Un array è una variabile strutturata
Un array può essere definito come una “collezione organizzata di oggetti”. Analizziamo la
definizione e capiremo molte cose, innanzitutto il concetto di “collezione” implica che tali
oggetti siano dello stesso tipo, così, prendendo spunto dal mondo reale, potremmo
definire un array di mele, che, quindi non può contenere nessun “oggetto pera”; un array
in C è una collezione di variabili dello stesso tipo.
“Organizzata” implica che sia possibile identificare univocamente tutti gli oggetti
dell’array in modo sistematico; questo in C viene fatto tramite l’uso di indici numerici
che, in un array di dimensione N, vanno da 0 ad N-1.
Riprendendo l’esempio della rubrica del cellulare, usato per spiegare le variabili nella
lezione 11, si può pensare a quando creiamo un “gruppo suonerie”, ad esempio di
nome “amici scuola”; tale gruppo può contenere a tutti gli effetti un certo numero di
nomi/numeri dei nostri compagni di classe, ecco questo “gruppo” è un array, perchè
formato da oggetti dello stesso tipo (nomi/numeri) ed indentificato da un nome (amici
scuola) che li accomuna.
Ma vediamo nel dettaglio come è possibile dichiarare un array:
int myarray[10];
Come si può notare un array viene dichiarato mettendo il nome della variabile
(myarray), e ,tra parentesi quadre, la cifra che identifica il numero di elementi dello
stesso tipo (int) e quindi la dimensione dell’array.
Nell’esempio, ognuno dei dieci interi viene chiamato elemento dell’array e dieci è la
dimensione dell’array. In C, come già detto, ogni elemento viene identificato da un
numero, contando da 0 (invece che da 1) ed arrivando ad N (la dimensione, nel nostro
esempio uguale a 10) – 1 (quindi arriviamo a 9); per far comprendere meglio il concetto
abbiamo creato la seguente immagine che ci riporta ad un paragone con il mondo
reale;
myarray[3]=’w’;
In questa immagine l’array viene paragonato ad un palazzo. Pensateci bene, quando
diciamo che un palazzo ha 5 piani, in realtà ha sei livelli; cioè il piano terra è il primo
livello, il primo piano il secondo, e così via; analogamente succede nell’array, se
abbiamo un array di dimensione 6, i suoi indici andranno da 0 a 5 e un elemento
richiamato, ad esempio, tramite l’indice 3, è il quarto elemento, questo perché si inizia a
contare da 0.
L’analogia assume maggiore importanza, anche per far capire che le variabili dell’array
sono dello stesso tipo, così come un array di int può contenere solo int (e non char o
float), un palazzo che contiene uffici, in questo esempio, può contenere solo uffici (e
non abitazioni).

Canepina

Canepina è un comune italiano di 3035 abitanti della provincia di Viterbo nel Lazio. Dista dal capoluogo circa 13 km.

Il nome Canepina deriva dalla parola canapa: non a caso, ancora nel XVII secolo, il paese era soltanto una vasta piantagione di canapa. Da qui nacque il nome Canapina poi divenuto nel secolo successivo Canepina.