15.- Loop DO LOOP
O Teu Mundo - Muito mais do que possas imaginar... :: Actualidade :: Informática :: Programação e Desenvolvimento :: Visual Basic
Página 1 de 1
15.- Loop DO LOOP
O loop DO...LOOP é muito versátil. Com ele se pode criar grande variedade de loops diferentes, loops que comprovem uma condição antes de executar o loop uma vez, depois da primeira execução e com combinações com enquanto (WHILE) que se cumpre uma condição ou até (UNTIL) que essa condição se cumpra. A sintaxe desta estrutura é a seguinte:
Vamos tratar de explicar esta sentença de maneira pausada para que seja mais fácil de entender. O que sempre tenderemos nesses loops é o DO e o LOOP, entre estes dois colocaremos as sentenças que queremos executar em cada Iteração do loop. O loops têm que avaliar entre cada iteração se continuam se executando ou não, para isso avaliam uma condição. O versátil deste loop é que a condição se pode expressar de muitas maneiras distintas.
Condição expressada ao lado do DO: neste caso a condição se avalia antes de começar a se executar o loop.
Condição expressada ao lado do LOOP: neste caso a condição se avalia depois de se executar o loop. Tem como diferença principal frente ao outro método que neste caso o loop se executará pelo menos uma vez.
Além de poder expressar a condição nesse dois sites também se pode construir a condição com um enunciado enquanto (WHILE) ou um enunciado até (UNTIL). As diferenças semânticas destas duas possibilidades se transferem também a sua maneira de funcionar.
Veremos dois exemplos deste loop para compreender seu funcionamento. O exemplo pede constantemente o nome do autor da página e não pára até que o nome seja "migue". O usuário também tem a possibilidade de escrever "out", nesse caso, comprovado com um enunciado IF, se sai do loop rompendo com a sentença EXIT DO, utilizada para romper loops.
O seguinte exemplo realiza uma conta e entre conta e conta se mostra o valor da conta atual em uma janelinha onde sai um botão de Tentar outra vez e outro de Cancelar. Se clicar em Tentar outra vez, continua se executando o loop e se clicar Cancelar sai pela porta de trás, de maneira parecida a como se saia no exemplo anterior, com EXIT DO.
- Código:
DO [WHILE | UNTIL (condicao)]
Sentencas
.....
LOOP [WHILE | UNTIL (condicao)]
Vamos tratar de explicar esta sentença de maneira pausada para que seja mais fácil de entender. O que sempre tenderemos nesses loops é o DO e o LOOP, entre estes dois colocaremos as sentenças que queremos executar em cada Iteração do loop. O loops têm que avaliar entre cada iteração se continuam se executando ou não, para isso avaliam uma condição. O versátil deste loop é que a condição se pode expressar de muitas maneiras distintas.
Condição expressada ao lado do DO: neste caso a condição se avalia antes de começar a se executar o loop.
Condição expressada ao lado do LOOP: neste caso a condição se avalia depois de se executar o loop. Tem como diferença principal frente ao outro método que neste caso o loop se executará pelo menos uma vez.
Além de poder expressar a condição nesse dois sites também se pode construir a condição com um enunciado enquanto (WHILE) ou um enunciado até (UNTIL). As diferenças semânticas destas duas possibilidades se transferem também a sua maneira de funcionar.
Veremos dois exemplos deste loop para compreender seu funcionamento. O exemplo pede constantemente o nome do autor da página e não pára até que o nome seja "migue". O usuário também tem a possibilidade de escrever "out", nesse caso, comprovado com um enunciado IF, se sai do loop rompendo com a sentença EXIT DO, utilizada para romper loops.
- Código:
Dim entrada
entrada = ""
DO WHILE (entrada <> "migue")
entrada = inputbox ("Diga o nome do autor","seguraca","migue",2,3)
if (entrada = "out") then
msgbox "saia pela porta dos fundos"
exit do
end if
LOOP
O seguinte exemplo realiza uma conta e entre conta e conta se mostra o valor da conta atual em uma janelinha onde sai um botão de Tentar outra vez e outro de Cancelar. Se clicar em Tentar outra vez, continua se executando o loop e se clicar Cancelar sai pela porta de trás, de maneira parecida a como se saia no exemplo anterior, com EXIT DO.
- Código:
option explicit
dim cont
dim resposta
cont = 0
DO
cont = cont +1
respuesta = msgbox (cont,69,"Variavel do loop, com valor 6 se sair")
if (resposta = 2) then
msgbox "Conta Cancelada",16,"Cancelou!"
exit do
end if
LOOP UNTIL (cont = 6)
Miguel Rocha- Mensagens : 692
Pontos : 25924
Reputação : 11
Idade : 32
Localização : Porto
O Teu Mundo - Muito mais do que possas imaginar... :: Actualidade :: Informática :: Programação e Desenvolvimento :: Visual Basic
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos
|
|