Differenze tra le versioni di "Array multidimensionali con numero determinato di elementi"

Da Gambas-it.org - Wikipedia.
Riga 8: Riga 8:
 
Esempio di ''Matrice'' costituita da tre dimensioni, la prima delle quali è formata da 2 elementi, la seconda da 5 e la terza da 4:
 
Esempio di ''Matrice'' costituita da tre dimensioni, la prima delle quali è formata da 2 elementi, la seconda da 5 e la terza da 4:
 
  matrix[2, 5, 4]
 
  matrix[2, 5, 4]
 
  
 
=Dichiarazione ed inizializzazione delle Matrici=
 
=Dichiarazione ed inizializzazione delle Matrici=
Riga 38: Riga 37:
 
   
 
   
 
   Print bb.Bounds.Count
 
   Print bb.Bounds.Count
 +
 +
'''End'''
 +
 +
===Esempio pratico===
 +
Mostriamo un semplice esempio di uso di un array locale multidimensionale con numero determinato di elementi:
 +
'''Public''' Sub Main()
 +
 
 +
  Dim bb As New Byte[3, 2]
 +
  Dim x, y As Byte
 +
 
 +
<FONT Color=gray>' ''Esssendo bidimensionale l'array, ci serviamo di due cicli "For" per assegnare un valore a ciascun suo elemento:''</font>
 +
  For x = 0 To 2
 +
    For y = 0 To 1
 +
      bb[x, y] = x + y
 +
    Next
 +
  Next
 +
 +
<FONT Color=gray>' ''Infine legge i valori assegnati all'array:''</font>
 +
  For x = 0 To 2
 +
    For y = 0 To 1
 +
      Print bb[x, y]
 +
    Next
 +
    Print "------"
 +
  Next
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 06:01, 13 ott 2021

Introduzione

Una "Matrice" (o anche Vettore multidimensionale o array multidimensionale) è un insieme di numeri ordinati secondo righe e colonne di ordine m x n, tale da formare una tabella di elementi, ove m e n sono numeri interi e stabiliti. In particolare m è il numero delle righe e n il numero delle colonne.
Se m = n la Matrice viene definita: quadrata.
Un elemento della Matrice occupa la posizione individuata dall'intersezione tra la m-esima riga e la n-esima colonna della Matrice.
Se la Matrice è formata da una riga ed una colonna, allora è considerata un Vettore. Se la Matrice è formata da una sola riga e da più colonne, allora la Matrice è definita: "Matrice riga". Se la Matrice è formata da più righe, ma da una sola colonna, allora la Matrice è definita: "Matrice colonna".


Esempio di Matrice costituita da tre dimensioni, la prima delle quali è formata da 2 elementi, la seconda da 5 e la terza da 4:

matrix[2, 5, 4]

Dichiarazione ed inizializzazione delle Matrici

In Gambas una Matrice può essere locale o globale, e viene dichiarata secondo la seguente sintassi:

DIM Identificatore AS [ NEW ] TipoDati [ dimensioni degli elementi della matrice ]

Esempio:

Public Sub Main()

 Dim bb As New Byte[3, 4]

ovviamente nel caso di dichiarazione di una variabile array globale:

Private bb As New Byte[3, 4]

 Public Sub Main()
   ......

La dimensione di una Matrice in Gambas non può essere superiore ad otto.
Esempio:

Public Sub Main()

' Viene dichiarata una matrice a 8 dimensioni:
 Dim bb As New Byte[3, 4, 2, 2, 3, 20, 33, 5]

  ......

Per conoscere il numero delle dimensioni di una matrice, è possibile usare la proprietà .Bounds.Count:

Public Sub Main()

' Viene dichiarata una matrice a 3 dimensioni, ciascuna delle quali ha un numero diverso di elementi:
 Dim bb As New Byte[3, 4, 2]

 Print bb.Bounds.Count

End

Esempio pratico

Mostriamo un semplice esempio di uso di un array locale multidimensionale con numero determinato di elementi:

Public Sub Main()
 
 Dim bb As New Byte[3, 2]
 Dim x, y As Byte
  
' Esssendo bidimensionale l'array, 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:
 For x = 0 To 2
   For y = 0 To 1
     Print bb[x, y]
   Next
   Print "------"
 Next

End