Gli array di celle su Octave

In questa lezione ti spiego come creare e usare un array di celle (cell array) su Octave

Cos'è un array di celle? Gli array di celle sono dei particolari array che contengono all'interno altri array. Ogni elemento di un array di celle è detto cella. Ogni cella contiene un array anche di diverso tipo (es. numerici, alfanumerici, ecc.). Ogni singolo array deve però contenere elementi dello stesso tipo dati al suo interno.

Creare un array di celle

Per inizializzare un nuovo array di celle utilizza la funzione cell(m,n) dove m e n sono il numero di righe e di colonne. dell'array di celle.

Ti faccio un esempio pratico.

Digita cell(3,3) per creare un array di celle 3x3 nella variabile myVar

>> myVar=cell(3,3)
myVar =
{
[1,1] = [ ](0x0)
[2,1] = [ ](0x0)
[3,1] = [ ](0x0)
[1,2] = [ ](0x0)
[2,2] = [ ](0x0)
[3,2] = [ ](0x0)
[1,3] = [ ](0x0)
[2,3] = [ ](0x0)
[3,3] = [ ](0x0)
}

Quando crei un array di celle tutte le celle sono vuote.

In alternativa, puoi anche creare un array di celle indicando i dati delle celle tra parentesi graffe.

>> A={"Matematica", "Latino", "Scienze"; 27, 30, 18}
A =
{
[1,1] = Matematica
[2,1] = 27
[1,2] = Latino
[2,2] = 30
[1,3] = Scienze
[2,3] = 18
}

Inserire gli array dentro un array di celle

Una volta creato l'array di celle puoi inserire gli array al suo interno.

Ad esempio, digita myVar(1,1)=([1 2;3 4]) per memorizzare l'array [1 2; 3 4] alla cella (1,1)

>> myVar(1,1)=([1 2;3 4])
myVar =
{
[1,1] =
1 2
3 4

[2,1] = [ ](0x0)
[3,1] = [ ](0x0)
[1,2] = [ ](0x0)
[2,2] = [ ](0x0)
[3,2] = [ ](0x0)
[1,3] = [ ](0x0)
[2,3] = [ ](0x0)
[3,3] = [ ](0x0)
}

Poi digita myVar(1,3)=(['A' 'B' 'C' 'D']) per inserire l'array ['A' 'B' 'C'] alla cella (1,3)

>> myVar(1,3)=(['A' 'B' 'C' 'D'])
myVar =
{
[1,1] =
1 2
3 4
[2,1] = [ ](0x0)
[3,1] = [ ](0x0)
[1,2] = [ ](0x0)
[2,2] = [ ](0x0)
[3,2] = [ ](0x0)
[1,3] = ABCD
[2,3] = [ ](0x0)
[3,3] = [ ](0x0)
}

Adesso l'array di celle è composto da due array.

I due array hanno diversa dimensione e tipo di dati differente. Il primo array è numerico mentre il secondo array è alfanumerico.

Nota. Quando introduci gli array nelle celle non devi seguire un ordine particolare. Puoi inserire gli array in qualsiasi cella. Le altre celle prive di array restano vuote.

Leggere il contenuto delle celle

Puoi accedere al contenuto di ogni cella indicando le coordinate (riga, colonna) tra parentesi tonde.

Ad esempio, digita myVar(1,3) per accedere al contenuto della cella (1,3)

>> myVar(1,3)
ans =
{
[1,1] = ABCD
}

Puoi anche usare la tecnica dello slicing per selezionare più celle simultaneamente.

Ad esempio, digita myVar(1:2,1:2) per selezionare le prime due righe e colonne dell'array di celle.

>> myVar(1:2,1:2)
ans =
{
[1,1] =
1 2
3 4
[2,1] = [](0x0)
[1,2] = [](0x0)
[2,2] = [](0x0)
}

Quest'ultimo comando seleziona quattro celle.

In questo modo puoi selezionare più celle contemporaneamente.

Come visualizzare l'array di celle

Per visualizzare il contenuto di un array di celle usa la funzione celldisp()

Ad esempio digita celldisp(myVar) per visualizzare l'array di celle nella variabile myVar

>> celldisp(myVar)
myVar{1,1} =

1 2
3 4

myVar{2,1} = [ ](0x0)
myVar{3,1} = [ ](0x0)
myVar{1,2} = [ ](0x0)
myVar{2,2} = [ ](0x0)
myVar{3,2} = [ ](0x0)
myVar{1,3} = ABCD
myVar{2,3} = [ ](0x0)
myVar{3,3} = [ ](0x0)

In questa lezione hai imparato a utilizzare gli array di celle su Octave.




Non hai risolto il tuo problema? Scrivi una domanda




FacebookTwitterLinkedinLinkedin