ciao a tutti, ho 3 array
var1 = 1, 2, 3, 4, 5, 10
var2 = 1, 3, 10
var3 = 1, 5, 10
come faccio a mettere i valori comuni 1, 10 in un nuovo array?
ciao a tutti, ho 3 array
var1 = 1, 2, 3, 4, 5, 10
var2 = 1, 3, 10
var3 = 1, 5, 10
come faccio a mettere i valori comuni 1, 10 in un nuovo array?
tre cicli for annidati mi sa:
prendi l'i-esimo del primo array, prendi il j-esimo del 2 array, prendi il h-esimo del terzo array. se sono uguali li metti in un quarto array, altrimenti no
IP-PBX management: http://www.easypbx.it
Old account: 2126 messages
Oldest account: 3559 messages
leggi gli array, uno alla volta
ogni elemento va confrontato con un quarto (n+1) array, bidimensionale
confronti l'elemento con la prima colonna; se c'è, aggiungi uno alla seconda colonna (stessa riga); se non c'è, aggiungi in fondo, e metti 1 nella seconda colonna (stessa riga)
alla fine dei 3 (n) array rileggi il 4o array (n+1): se nella seconda colonna c'è 3 (n) quell'elemento è comune.
più facile a farsi che a dirsi
ho risolto cosi e funziona
codice:A = Array(1,2,3,4,5) B = Array(2,5,7,8,9,10) C = Array(2,5,10,11,12,13,14) for i=0 to Ubound(A) for ii=0 to Ubound(B) if A(i)=B(ii) then for iii=0 to Ubound(C) if B(ii)=C(iii) then Response.Write(C(iii)) else Response.Write("no") end if next end if next next
ma se popolo l'array da una stringa non funziona, dove è il problema??
codice:conta_uno= "1,2,3,4,5" conta_due= "2,5,7,8,9,10" conta_tre= "2,5,10,11,12,13,14" A = Array(conta_uno) B = Array(conta_due) C = Array(conta_tre) for i=0 to Ubound(A) for ii=0 to Ubound(B) if A(i)=B(ii) then for iii=0 to Ubound(C) if B(ii)=C(iii) then Response.Write(C(iii)) else Response.Write("no") end if next end if next next
per quale motivo se scrivo direttamente l'array funziona
A = Array(1,2,3,4,5)
funziona
A(0)=1
mentre se prendo lo stesso valore da una variabile
valori = "1,2,3,4,5"
A = Array(valori)
e provo a vedere il primo valore
A(0)="1,2,3,4,5"
perchè non sente la virgola???
perché Array funziona solo in quel primo modo (cfr. http://msdn.microsoft.com/en-us/library/dsxhtazh(VS.85).aspx). usa eventualmente SPLIT