Jump to content
Sign in to follow this  
Ridelight

[VB6] Loops

Recommended Posts

Ridelight

Loop FOR

FOR é utilizado para os loops quando sabemos o número de vezes que queremos executar o loop.

FOR (inicio) TO (fim) STEP (passo)

   

        ........

NEXT

A sentença realiza uma repetição desde o inicio ao final do loop.

NEXT serve para delimitar o final do loop, quando se encontra com o NEXT volta-se outra vez ao princípio do FOR, assim até realizar o número de repetições definidas.

Existe um valor que serve para indicar o intervalo que se deseja realizar de repetição para repetição, é o valor STEP. Um STEP 2 determinaria que entre repetições a variável aumenta 2 unidades. No caso de não indicar nada o valor pré-difinido é 1. Também podemos utilizar valores negativos.

Exemplo:

for i=0 to 9 step 3
      msgbox(i)
next

Este exemplo apresentaria uma mensagem com um numero da variável i, utilizada para apresentar o valor das repetições.

Loop FOR EACH

Um loop FOR especial, utilizado para percorrer os elementos de uma estrutura de dados.

A estrutura de controle FOR EACH serve para mover-se pelos elementos de uma estrutura de dados, como poderia ser um vector, e realizar ações para cada um dos elementos.

Vejamos com um exemplo esta estrutura de controle: No exemplo, primeiro criamos um vector e preenchemos com números cada um de seus campos, com um loop FOR normal. Mais tarde utilizamos o loop FOR EACH para aceder a cada uma das posições deste vetor de números e escrever na página cada um destes números.

dim tor(20)
for i=0 to 20
    tor(i) = i
next
for each i in tor 
    document.write (tor(i))
next 

Observemos o segundo loop, indica-se que para cada i (i é o índice com o qual podemos mover-nos no loop e na estrutura) dentro de tor (que é a estrutura, neste caso um vector) faça um document.write(tor(i)). Com tor(i) acessamos ao campo atual e document.write() serve para escrever algo na página web. Combinados, o que é escrito é o que existe na posição actual do vector.

Loop WHILE WEND

O loop WHILE...WEND serve para realizar um tipo de loop muito utilizado em programação que é o loop "Enquanto", que se executa enquanto se cumprir uma condição. A diferença do loop FOR é que este se utiliza quando não conhecemos o número de repetições que temos que realizar.

O loop funciona da seguinte maneira. Quando se vai executar, avalia uma expressão e verifica se esta dá resultados positivos. Se for assim, executa o corpo do loop (as sentenças que continuam até o WEND), caso contrário sai.

WHILE (condicao)
      
          ....
WEND 

Agora vamos ver um pequeno exemplo sobre este loop, que realiza uma conta número a número até chegar ao 13. Em cada repetição do loop mostra numa janelinha o número actual e oferece a possibilidade de alterá-lo, já que a janelinha é uma janela Input, que oferece a oportunidade de mudar o valor e devolve esse valor, mudado ou não. Como dizíamos, se deixarmos o exemplo sem alterar nada, contará até 13, mas se introduzirmos um número no inputbox continuará a conta pelo número introduzido. Se o número introduzido for maior que 13 sairá do loop.

option explicit
dim a
a = 0
WHILE (a < 13)
   a = a + 1
   a = inputbox("Introduza um valor inteiro","Número",a,200,100)
WEND 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.