1.3 Strutture di controllo della logica ciclica
1.3.1 Istruzione Do While
. Loop
Questistruzione è usata per eseguire una porzione di codice
mentre è verificata una certa condizione.
Ecco la sintassi.
1- Do While (condizione)
2- (istruzioni)
3- Loop
Ecco un esempio:
<%
DIM anni, contatore
anni = 35
contatore = 1
Do While anni < 39
Response.Write Ciclo eseguito & contatore
& volta/e <br>
contatore = contatore + 1
anni = anni + 1
Loop
%>
esempio 1
Nellesempio 1 creiamo una variabile di nome anni e gli
assegniamo il valore 35, ed una variabile contatore che inizializziamo
ad 1. Eseguiamo il ciclo, che verrà eseguito 5 volte prima che la
condizione risulti falsa.
Unaltra forma di questa struttura è la seguente
Do
(istruzioni)
Loop While (condizione)
Il funzionamento è il medesimo di prima, ma fate bene attenzione
che con questa struttura le istruzioni allinterno del ciclo
sono eseguite almeno una volta, prima che la condizione sia controllata.
Potete usare anche la struttura seguente nei vostri script:
While (condizione)
(istruzioni)
Wend
Il risultato che otterrete è lo stesso ottenibile usando Do While
. Loop.
1.3.2 Do Until
Loop
Questistruzione è usata per eseguire una porzione di codice
fino a quando è verificata una certa condizione.
Ecco la sintassi.
1- Do Until (condizione)
2- (istruzioni)
3- Loop
Eccovi un esempio:
<%@ Language = VBScript
%>
<% Option Explicit %>
<%
DIM anni, contatore
anni = 35
contatore = 1
Do Until anni < 39
Response.Write Ciclo eseguito & contatore
& volta/e <br>
contatore = contatore + 1
anni = anni + 1
Loop
%>
esempio 2
Nellesempio 2 creiamo una variabile di nome anni e gli
assegniamo il valore 35, ed una variabile contatore che inizializziamo
ad 1. Eseguiamo il ciclo, che verrà eseguito 5 volte prima che la
condizione risulti falsa.
Unaltra forma di questa struttura è la seguente
Do
(istruzioni)
Loop Until (condizione)
Il funzionamento è il medesimo di prima, ma fate bene attenzione
che con questa struttura le istruzioni allinterno del ciclo
sono eseguite almeno una volta, prima che la condizione sia controllata.
1.3.3 For
Next
Questistruzione è usata per eseguire una porzione di codice
un numero di volte noto a priori.
Ecco la sintassi.
1- For (contatore = valore) To (valore finale) Step (incremento)
2- (istruzioni)
3- Next
Eccovi un esempio:
<%@ Language = VBScript %>
<% Option Explicit %>
<%
DIM contatore
For contatore = 1 To 10 Step 1
Response.Write valore del contatore : & contatore
& <br>
Next
%>
esempio 3
Nellesempio 3 creiamo una variabile di nome contatore
che inizializziamo ad 1. Eseguiamo il ciclo fino a quando la variabile
contatore non assume valore 11, nel qual caso il ciclo si interrompe.
Il valore che andiamo ad usare per incrementare la variabile può
anche essere negativo, nel qual caso il ciclo si arresta quando
la nostra variabile raggiunge un valore minore di valore finale;
per esempio:
<%@ Language = VBScript
%>
<% Option Explicit %>
<%
DIM contatore
For contatore = 11 To 10 Step -1
Response.Write valore del contatore : &
contatore & <br>
Next
%>
esempio 4
Il ciclo nellesempio 4 verrà eseguito solo due volte, dopo
di ché verrà interrotto.
Altri casi sono:
Se valore iniziale è maggiore di valore finale ed incremento è positivo,
il ciclo non verrà mai eseguito.
Se valore iniziale è minore di valore finale ed incremento è negativo,
il ciclo non verrà mai eseguito.
1.3.4 For Each
Next
Questistruzione si usa se bisogna ripetere lesecuzione
di ogni elemento di un gruppo. Se per esempio vogliamo visualizzare
tutte le stringhe contenute in un array useremo questo costrutto.
Eccovi un esempio:
<%@ Language = VBScript
%>
<% Option Explicit %>
<%
DIM array_nomi(3), nome
Array_nomi(0) = Nicola
Array_nomi(1) = Giovanni
Array_nomi(2) = Francesca
Array_nomi(3) = Flavia
For Each nome in array_nomi
Response.Write nome & <br>
Next
%>
esempio 5
Nellesempio 5 creiamo due variabili, nome e array_nomi,
ed inizializziamo larray con delle stringhe. Poi usiamo questo
costrutto per scansionare larray invece del solito For
Next.
Nella prossima lezione parleremo dei controlli della logica ramificata.
Torna all'indice Generale del corso di Corso di ASP di Software Planet