Differenze tra le versioni di "CONTINUE"

Da Gambas-it.org - Wikipedia.
 
(6 versioni intermedie di uno stesso utente non sono mostrate)
Riga 1: Riga 1:
L'istruzione '''Continue''' è sempre posta all'interno di un ciclo e solitamente è conseguenza del verificarsi di un'istruzione condizionale:
+
L'istruzione '''Continue''' è sempre posta all'interno di un ciclo e come conseguenza del verificarsi di un'istruzione condizionale:
 
  '''If''' ''condizione'' Then <FONT Color=#B22222>'''Continue'''</font>
 
  '''If''' ''condizione'' Then <FONT Color=#B22222>'''Continue'''</font>
 
'''Continue''' serve per saltare alla fine del ciclo interrompendo quindi l’iterazione corrente.  <SUP>&#091;[[#Note|Nota 1]]&#093;</sup>
 
'''Continue''' serve per saltare alla fine del ciclo interrompendo quindi l’iterazione corrente.  <SUP>&#091;[[#Note|Nota 1]]&#093;</sup>
<BR>L’esecuzione salta immediatamente alla valutazione della condizione di terminazione del ciclo medesimo, per procedere poi eventualmente ad una nuova iterazione. In tal caso, pertanto, gni eventuale incremento, già avvenuto, della variabile oggetto della condizione di ciclo non viene modificato.
+
<BR>L’esecuzione salta quindi immediatamente alla valutazione della condizione di terminazione del ciclo medesimo, per procedere poi eventualmente ad una nuova iterazione.
 +
<BR>Il valore corrente della variabile oggetto della condizione di ciclo non viene azzerato da '''Continue'''.
 
<BR>Rispetto all'istruzione "[[BREAK-EXIT|Break]]" l'istruzione "'''Continue'''", dunque, <SPAN Style="text-decoration:underline">non</span> determina l'uscita immediata dal ciclo.
 
<BR>Rispetto all'istruzione "[[BREAK-EXIT|Break]]" l'istruzione "'''Continue'''", dunque, <SPAN Style="text-decoration:underline">non</span> determina l'uscita immediata dal ciclo.
 
  <FONT Color=darkgreen><B>For</b></font> i = 0 To 10
 
  <FONT Color=darkgreen><B>For</b></font> i = 0 To 10
 
   
 
   
  <FONT Color=blue><B>If</b></font> i == 5 Then <FONT Color=#B22222>'''Continue'''</font> → ↘
+
  <FONT Color=blue><B>If</b></font> i == 5 Then <FONT Color=#B22222>'''Continue'''</font> → ↘
                             
+
                             
  Print i                    ↓
+
  Print i                    ↓
                             
+
                             
  <FONT Color=darkgreen><B>Next</b></font> ← ← ← ← ← ← ← ← ← ← ← ←
+
  <FONT Color=darkgreen><B>Next</b></font> ← ← ← ← ← ← ← ← ← ← ← ←
 
Nell'esempio precedente <SPAN Style="text-decoration:underline">se</span> il valore della variabile "i" è uguale a 5, allora il controllo del ciclo torna alla sua riga iniziale, saltando così la riga di comando contenente l'istruzione "Print". Da lì quindi il ciclo "For...Next" procederà regolarmente ovviamente con il naturale incremento della variabile "i" al valore 6 e così via sino a 10.
 
Nell'esempio precedente <SPAN Style="text-decoration:underline">se</span> il valore della variabile "i" è uguale a 5, allora il controllo del ciclo torna alla sua riga iniziale, saltando così la riga di comando contenente l'istruzione "Print". Da lì quindi il ciclo "For...Next" procederà regolarmente ovviamente con il naturale incremento della variabile "i" al valore 6 e così via sino a 10.
  
Riga 20: Riga 21:
 
    
 
    
 
   For i As Byte = 1 To 10
 
   For i As Byte = 1 To 10
   
+
     If i = 5 Then <FONT Color=#B222222><B>Goto</b></font> <FONT Color=green>PROSEGUI</font>
     If i = 5 Then <FONT Color=#B222222><B>Goto</b></font> <FONT Color=green>PROSEGUI</font>
+
     Print i
 
+
     <FONT Color=green>PROSEGUI:</font>
     Print i
 
 
 
     <FONT Color=green>PROSEGUI:</font>
 
 
 
 
   Next
 
   Next
 
    
 
    
 
  End
 
  End

Versione attuale delle 06:25, 23 mag 2023

L'istruzione Continue è sempre posta all'interno di un ciclo e come conseguenza del verificarsi di un'istruzione condizionale:

If condizione Then Continue

Continue serve per saltare alla fine del ciclo interrompendo quindi l’iterazione corrente. [Nota 1]
L’esecuzione salta quindi immediatamente alla valutazione della condizione di terminazione del ciclo medesimo, per procedere poi eventualmente ad una nuova iterazione.
Il valore corrente della variabile oggetto della condizione di ciclo non viene azzerato da Continue.
Rispetto all'istruzione "Break" l'istruzione "Continue", dunque, non determina l'uscita immediata dal ciclo.

For i = 0 To 10

  If i == 5 Then Continue → ↘
                              ↓
  Print i                     ↓
                              ↙
Next ← ← ← ← ← ← ← ← ← ← ← ← ←

Nell'esempio precedente se il valore della variabile "i" è uguale a 5, allora il controllo del ciclo torna alla sua riga iniziale, saltando così la riga di comando contenente l'istruzione "Print". Da lì quindi il ciclo "For...Next" procederà regolarmente ovviamente con il naturale incremento della variabile "i" al valore 6 e così via sino a 10.


Note

[1] L'effetto dell'istruzione Continue può essere paragonata all'effetto dell'istruzione GOTO all'interno di un ciclo:

Public Sub Main()
 
 For i As Byte = 1 To 10
   If i = 5 Then Goto PROSEGUI  
   Print i  
   PROSEGUI:  
 Next
 
End