Differenze tra le versioni di "REPEAT - UNTIL"
Riga 42: | Riga 42: | ||
'''End''' | '''End''' | ||
Pertanto il ciclo composto dalle parole-chiave ''Repeat...Unitil'' è equivalente al ciclo composto dalle parole-chiave ''Do...Loop Until''. | Pertanto il ciclo composto dalle parole-chiave ''Repeat...Unitil'' è equivalente al ciclo composto dalle parole-chiave ''Do...Loop Until''. | ||
+ | |||
+ | |||
+ | ==Uscire da un ciclo ''Repeat...Until'' quando una funzione restituisce un valore identico a quello precedentemente restituito== | ||
+ | Se si deve prescrivere che la ''condizione'' del ciclo "''Repeat...Until'' " si verifichi soltanto quando una funzione restituisce un valore identico a quello precedentemente da essa restituito, bisognerà servirsi di una idonea variabile di appoggio. | ||
+ | <BR>Esempio astratto: | ||
+ | Repeat | ||
+ | |||
+ | <FONT Color=green>valore</font> = funzione( ) <FONT Color=gray>' ''Valore restituito dalla funzione''</font> | ||
+ | |||
+ | Wait 0.01 | ||
+ | |||
+ | <FONT Color=gray>' ''Il valore precedentemente restituito viene confrontato con quello attualmente restituito dalla medesima funzione:''</font> | ||
+ | Until <FONT Color=green>valore</font> == funzione( ) |
Versione delle 08:06, 26 ago 2020
Il ciclo Repeat...Until, la cui sintassi è:
Repeat ...... Until condizione
viene ripetuto fintanto che condizione risulta falsa: se condizione è falsa, allora il ciclo viene ripetuto.
Poiché condizione è posta in fondo al ciclo, la sua prima verifica avviene soltanto al compimento del primo ciclo. Ciò determina che il ciclo viene compiuto almeno una volta a prescindere dal risultato di condizione.
Mostriamo un esempio pratico:
Public Sub Main() Dim i As Integer Repeat Print i Inc i Until i = 10 ' Se "i" è uguale a 10, allora si esce dal ciclo; altrimenti il ciclo è ripetuto Print i End
In sostanza la logica di questo ciclo è considerando l'esempio di sopra: ripete il ciclo fino a che il valore della variabile "i" non diventa uguale a 10.
Equivalenza tra il ciclo Repeat...Unitil ed il ciclo Do...Loop Until
Al posto del ciclo Repeat...Until è possibile utilizzare il ciclo Do...Loop Until, il quale si comporta esattamente come il ciclo Repeat...Until.
Mostriamo un esempio pratico:
Public Sub Main() Dim i As Integer Do Print i Inc i Loop Until i = 10 ' Se "i" è uguale a 10, allora si esce dal ciclo; altrimenti il ciclo è ripetuto Print i End
Pertanto il ciclo composto dalle parole-chiave Repeat...Unitil è equivalente al ciclo composto dalle parole-chiave Do...Loop Until.
Uscire da un ciclo Repeat...Until quando una funzione restituisce un valore identico a quello precedentemente restituito
Se si deve prescrivere che la condizione del ciclo "Repeat...Until " si verifichi soltanto quando una funzione restituisce un valore identico a quello precedentemente da essa restituito, bisognerà servirsi di una idonea variabile di appoggio.
Esempio astratto:
Repeat valore = funzione( ) ' Valore restituito dalla funzione Wait 0.01 ' Il valore precedentemente restituito viene confrontato con quello attualmente restituito dalla medesima funzione: Until valore == funzione( )