Invertire l'ordine dei valori contenuti dagli elementi di un vettore
Da Gambas-it.org - Wikipedia.
Per invertire l'ordine dei valori degli elementi di un vettore, cosicché ad esempio da una situazione iniziale come la seguente: 11, 22, 33, 44, 55, 66, si ottenga la nuova: 66, 55, 44, 33, 22, 11, è sufficiente adottare il Metodo ".Reverse( )" dell'oggetto array.
Mostriamo un semplice esempio:
Public Sub Main() Dim vett As Integer[] = [11, 22, 33, 44, 55, 66, 77] Dim v As Integer For Each v In vett Print v, Next Print vett.Reverse() For Each v In vett Print v, Next Print End
Scrivere un'apposita esplicita funzione
In alternativa è possibile scrivere una esplicita funzione in Gambas, come ad esempio la seguente:
Public Sub Main() Dim vett As Integer[] = [11, 22, 33, 44, 55, 66, 77] Dim v As Integer For Each v In vett Print v, Next Print Inversione(vett) ' Passaggio dell'argomento per "Indirizzo" For Each v In vett Print v, Next Print End Private Function Inversione(ii As Integer[]) Dim i, c As Integer Repeat i = ii[ii.Max - c] ii[ii.Max - c] = ii[c] ii[c] = i Inc c Until c > (ii.Max - c) End