Do
While
Para revisar, quando falamos de estruturas de controle significa instruções que fazem com que o programa rode em outra ordem que não seja a linha 1, linha 2, linha 3 etc.IF...Then e Select Case fazem com que linhas do código sejam executadas e outras não. Call e GoTo fazem com que o programa vá para outra localização no código. As estruturas de Loop fazem com que alguns comandos sejam repetidos. As estruturas de Loop possuem duas opções: For...Next e Do While ... Loop. Se você conhecer a quantidade de repetições que devem ser realizadas, utilize o comando FOR...NEXT, caso não saiba, utilize a estrutura Do While...Loop.
Todas as linhas de código dentro dos comandos DO WHILE e LOOP serão repetidas várias vezes até que o teste que vem depois do WHILE seja falso. Assim as repetições param e o programa passa para o código seguinte ao LOOP.
Sintaxe:
DO WHILE condição
linhas de código
LOOP
Existe a possibilidade do Loop nunca acabar. Então se previna usando um IF para terminar, como:
contador=1
contador = contador +1
If contador>100 then
exit do
End If
Exemplo 1:
1 <html><head>
2 <title>DoLoop2.asp</title>
3 <body
bgcolor="#FFFFFF"></head>
4 <p>DoLoop2.asp
Exemplo<br>
5 Faz com que o
programa imprima somente a quantidade de meses.</p>
6 <p>
7 <P>
8 <%
9 contador
= 1
10 mes_atual
= month(now())
11 Do
while contador < mes_atual + 1
12
response.write "Número do Mês = " & contador
& " "
13
response.write "______________________________" &
"<BR><br>"
14 If
contador >13 then
15
exit do
16 end
if
17
contador = contador+1
18 Loop
19 %>
20 <hr></body></html>
Exemplo 2:
1 <html><head>
2 <title>DoLoop3.asp</title>
3 </head><body
bgcolor="#FFFFFF">
4 <form
action="DoLoopBack.asp" method = post>
5 <p>DoLoop3 Exemplo<br>
6 instead of form to
print, make form for electronic submission</p>
7 <p></p>
8 <%
9 contador
= 1
10 mes_atual
= month(now())
11 Do
while contador < mes_atual + 1
12 response.write
"Número do mês " & contador & " "
13 TempTextField
= "<input type = " & chr(34) &
"text" & chr(34)
14 TempTextField
= TempTextField & "name=" & chr(34) &
contador & chr(34)
15 TempTextField
= TempTextField & ">"
16 response.write
TempTextField & "<br><br>"
17 If
contador >13 then
18
exit do
19 end
if
20 contador
= contador+1
21 Loop
22 %>
23 <input
type=submit>
24 </form><hr></body></html>
Copyright (c) 1998 - Alexandre Barreto