Newsgroup: it.comp.lang.javascript
Titolo: ciclo complesso credo o qualche funzione particolare

Array così: ad ogni valore della 1a colonna corrisponde uno in 2a colonna
2	25
25	27
27	60
4	50
27	61
riuscire a
scrivere questo
2	25,27,60,61
4	50
i cicli dovrebbero fare tali passaggi:
-il 2 non è a destra allora riscrivo in prima colonna e associo il valore
che già ha (25)
-il 25 si trova anche in 2a colonna, allora il suo valore 27 va a fianco
del 25
etc...
c'è qualche soluzione particolare?

 circolari) ti si blocca tutto.
puoi fare un esempio?
o un link con esempio
grazies

 viene in mente, in modo che tu possa poi tranquillamente scegliere...
Sei perfido. :)
-- 
~ "When you have eliminated the impossible, whatever remains,
however improbable, must be the truth." (S.H.)

 viene in mente, in modo che tu possa poi tranquillamente scegliere...
come si dice una ma buona, o se hai un link 

ok funziona (thank 1000) ma in parte, cioč sull'esempio di numeri che ti
avevo dato funziona; mentre con piu' sottonumeri sembra non finire tutti i
passaggi per raggruppare tutti i sottonumeri del numero capofila 
inoltre nella condizione && hai usato un & solo,; funziona comunque ma
sugli esempi di javascript ho trovato sempre quello doppio; non so se
dipende dalle varsioni dei browser il corretto funzionamento
questo il codice finale
var mydata = new Array();	
mydata=[[2,3],[3,4],[1,10],[16,12],[1,15],[2,16],[4,18],[16,19],[1,20],[6,23],[10,25],[10,26],[19,30],[25,32]];
    function scanmyarray()
	 {		  var visited = new Object();
			  var ans = '';
			  for (var i=0; i< mydata.length; i++) 
					{ if (!(visited[i])) 
							{ans += mydata[i][0] + "\t";
							 visited[i] = true;
							 ans += deepscan(mydata[i][1], visited);
							 ans += "\r\n";}
					}
        alert(ans);
    }
 
    function deepscan(val, visited ) 
	 { var ans = String(val);
		for (var i=0; i< mydata.length; i++) 
				{if (( mydata[i][0]==val ) && !(visited[i])) 
						{visited[i] = true;
						 ans += ',' + deepscan(mydata[i][1], visited); }
				}
		return ans;
    }

 *criminale* delle parentesi non ha nessuna scusa :-DDD
su dreamveawer viene una meraviglia;
considerando i rapporti di forza in campo, posso solo abbellire il codice
nenche riuscendoci .-(

 


 miscelare al visited al termine. Gioca un po' con la potenza, sů...
nun ce riesco;

 miscelare al visited al termine. Gioca un po' con la potenza, sů...
nun ce riesco;
inoltre il fatto di usare le stringhe ha un limite?
cioč al max 255 caratteri o comunque ha un limite max di lunghezza?

 core de mamma... appena ciň nattimo ce butto nocchio.
t'ho fregato te sei autoaffezionados;
comunque avevo rifatto il post perchč volevo chiedere il problema dell'uso
delle stringhe;
(thank per la pazienza)

 Vai tranquillo
meglio così, rimettendo il controllo che previene la circolarità:
    function scanmyarray() {
        var stepvisit,visited = new Object();
        var ans = '';
        for (var i=0; i< mydata.length; i++) {
            if (!(visited[i])) {
                ans += mydata[i][0] + "\t";
                visited[ i ] = true;
                stepvisit = new Object();
                stepvisit[ i ] = true;
                ans += deepscan( mydata[i][1], visited, stepvisit);
                ans += "\r\n";
            }
        }
        alert( ans );
    }
 
    function deepscan( val, visited, stepvisit ) {
        var ans = String(val);
        for (var i=0; i< mydata.length; i++) {
            if (( mydata[i][0] == val ) && ! (stepvisit[i])) {
                visited[i] = true;
                stepvisit[i] = true;
                ans += ',' + deepscan(mydata[i][1], visited, stepvisit);
            }
        }
        return ans;
    }
-- 
Splendente in età acerba di passione
rosso fiammante,
ma senza età matura
marcia impostura