Differenze tra le versioni di "Array annidati"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "Un array "annidato" (''Embedded array'' ) è una matrice che viene allocata direttamente all'interno della variabile di un oggetto array. Essa non può essere ''locale'', e pe...") |
|||
Riga 1: | Riga 1: | ||
Un array "annidato" (''Embedded array'' ) è una matrice che viene allocata direttamente all'interno della variabile di un oggetto array. Essa non può essere ''locale'', e pertanto va dichiarata prima della routine, all'esterno. | Un array "annidato" (''Embedded array'' ) è una matrice che viene allocata direttamente all'interno della variabile di un oggetto array. Essa non può essere ''locale'', e pertanto va dichiarata prima della routine, all'esterno. | ||
− | + | ||
− | ''<Font Color=B22222>variabile[ | + | Le dimensioni ed il numero degli elementi della matrice ''annidata'' sono definiti con la notazione: |
+ | ''<Font Color=B22222>variabile[elementi]</font>'' | ||
+ | Al riguardo gli array annidati possono essere monodimensionali: | ||
+ | array[n] | ||
+ | o multidimensionali: | ||
+ | array[m, n] | ||
+ | array[m, n, z] | ||
+ | array[etc...] | ||
Esempio: | Esempio: | ||
<Font Color=gray>' ''Viene dichiarata la matrice e definite le sue dimensioni ed il numero degli elementi:''</font> | <Font Color=gray>' ''Viene dichiarata la matrice e definite le sue dimensioni ed il numero degli elementi:''</font> | ||
− | Private | + | Private bb[2, 3, 4] As Byte |
Public Sub Main() | Public Sub Main() | ||
− | <Font Color=gray>' '' | + | array[1, 2, 3] = 55 |
− | + | ||
− | + | <Font Color=gray>' ''Viene mostrato il numero complessivo degli elementi posseduti dal array annidato, nonché il valore assegnato ad uno specifico elemento:''</font> | |
+ | Print bb.Count, bb[1, 2, 3] | ||
+ | |||
+ | End | ||
'''End''' | '''End''' | ||
Riga 19: | Riga 29: | ||
===Creazione di una matrice ''annidata''=== | ===Creazione di una matrice ''annidata''=== | ||
Nel seguente esempio definiamo un array "annidato" di due righe e due colonne per un totale di quattro elementi: | Nel seguente esempio definiamo un array "annidato" di due righe e due colonne per un totale di quattro elementi: | ||
− | Private | + | Private bb[3, 2] As Byte |
− | '''Public''' Sub | + | '''Public''' Sub Main() <Font Color=gray>' ''Scrive la matrice "annidata"''</font> |
− | Dim x, y As | + | Dim x, y As Byte |
− | + | ||
− | + | <Font Color=gray>' ''L'array annidato, essendo bidimensionale, ci serviamo di due cicli "For" per assegnare un valore a ciascun suo elemento:'</font> | |
− | For x = 0 To | + | For x = 0 To 2 |
For y = 0 To 1 | For y = 0 To 1 | ||
− | + | bb[x, y] = x * y | |
− | |||
− | |||
− | |||
− | |||
− | |||
Next | Next | ||
Next | Next | ||
− | + | <Font Color=gray>' ''Infine legge i valori assegnati all'array "annidato"'':</font> | |
− | + | For x = 0 To 2 | |
− | + | For y = 0 To 1 | |
− | + | Print bb[x, y] | |
− | |||
− | |||
− | |||
− | |||
− | For | ||
− | Print | ||
Next | Next | ||
− | + | Print "------" | |
Next | Next | ||
'''End''' | '''End''' |
Versione delle 05:52, 13 ott 2021
Un array "annidato" (Embedded array ) è una matrice che viene allocata direttamente all'interno della variabile di un oggetto array. Essa non può essere locale, e pertanto va dichiarata prima della routine, all'esterno.
Le dimensioni ed il numero degli elementi della matrice annidata sono definiti con la notazione:
variabile[elementi]
Al riguardo gli array annidati possono essere monodimensionali:
array[n]
o multidimensionali:
array[m, n] array[m, n, z] array[etc...]
Esempio:
' Viene dichiarata la matrice e definite le sue dimensioni ed il numero degli elementi: Private bb[2, 3, 4] As Byte Public Sub Main() array[1, 2, 3] = 55 ' Viene mostrato il numero complessivo degli elementi posseduti dal array annidato, nonché il valore assegnato ad uno specifico elemento: Print bb.Count, bb[1, 2, 3] End End
Riguardo ai valori assegnabili alle Enumerazioni si veda anche la pagina relativa alle Espressioni costanti.
Creazione di una matrice annidata
Nel seguente esempio definiamo un array "annidato" di due righe e due colonne per un totale di quattro elementi:
Private bb[3, 2] As Byte Public Sub Main() ' Scrive la matrice "annidata" Dim x, y As Byte ' L'array annidato, essendo bidimensionale, ci serviamo di due cicli "For" per assegnare un valore a ciascun suo elemento:' For x = 0 To 2 For y = 0 To 1 bb[x, y] = x * y Next Next ' Infine legge i valori assegnati all'array "annidato": For x = 0 To 2 For y = 0 To 1 Print bb[x, y] Next Print "------" Next End