Fare internet

E' come il lego, più pezzi ho più sono allegro
Seguci su Facebook Seguici su Twitter Iscrivita ai nostri Feed      Mandaci una mail

Programmazione: i cicli for nidificati.

Scritto da Fare-internet il 25 marzo 2013 condividi condividi

Come sappiamo un ciclo for è un controllo di flusso che consente di ripetere una data serie di istruzini un numero predefinito (anche calcolato) di volte.
 
Quando all’interno di un ciclo for si inserisce un altro ciclo for si parla di cicli for nidificati.
 
L’utilizzo di questi cicli può tornare utile quando dobbiamo descrivere strutture bidimensionali come ad esempio tabelle o array bidimensionali.

Il codice da utilizzare è qualche cosa del genere:

for ($i=0;$i<5;$i++){
   for($k=0;$k<5;$k++) echo $i*$k;
   echo "<br />";
}

Il numero di esecuzioni del blocco di codice del secondo ciclo (cioè del ciclo più interno) è dato dal numero di esecuzioni del cilco esterno, moltiplicato per il numero di esecuzioni del ciclo nidificato, nel nostro caso 5 * 5 = 25.
In pratica per ogni valore di $i (0,1,2,3,4) $k assumerà tutti i valori tra 0 e 4, ricominciando ad ogni variazione di $i.

Quando si usano i cicli nidifcati le variabili utilizzate devono essere diverse altrimenti l’esecuzione del codice non è quella che ci aspettiamo.

Ad esempio se scrivessimo:

for ($i=0;$i<5;$i++){
   for($i=0;$i<5;$i++) echo $i;
   echo "<br />";
}

Alla fine del ciclo più interno $i varrebbe 5, questo valore bloccherebbe l’esecuzione di primo ciclo, quindi avremmo 5 “ciclate” invece di 25.

Twitter