Compartilhar via


Examinar mais detalhadamente: Usando do... While e do... Until... Until para repetir até uma condição é atendida

Nesta lição, você aprenderá a usar as instruções Do...While e Do...Until para repetir o código com base em determinadas condições.

Na lição anterior, você aprendeu a usar a instrução For...Next para fazer um loop através de um bloco de código um número de vezes especificado — mas e se o número de vezes que o código deve ser repetido é diferente para certas condições?As instruções Do...While e Do...Until permitem que você repita um bloco de código enquanto uma condição específica estiver True ou até que uma determinada condição seja True.

Por exemplo, suponha que você tinha um programa para adicionar uma série de números, mas você nunca desejar a soma dos números a ser mais de 100.Você pode usar o Do...While demonstrativo para realizar a adição da seguinte maneira:

Dim sum As Integer = 0
Do While sum < 100
  sum = sum + 10
Loop

Nesse código, a Do While a variável é avaliada linha sum Para ver se ele é menor que 100: Se for, a próxima linha de código será executada; caso contrário, ele move para a próxima linha de código seguinte Loop. A palavra-chave Loop informa o código para voltar para a linha DoWhile e avaliar o novo valor de sum.

Tente-o!

Para usar uma instrução Do...While

  1. On the Arquivo menu, clicar Novo projeto.

  2. Na caixa de diálogo Novo Projeto , no painel de Templates, clique em Windows Application .

  3. Na caixa Name digite DoWhilee clique em OK.

    Abre um novo projeto Windows Forms.

  4. Da Toolbox, arraste um controle um TextBox e um controle Button para o formulário.

  5. Clique duas vezes em Button para abrir o Editor de Código.

  6. No manipulador de eventos Button1_Click, digite o código a seguir:

    Dim sum As Integer = 0
    Dim counter As Integer = 0
    Do While sum < 100
      sum = sum + CInt(Textbox1.Text)
      counter = counter + 1
    Loop
    MsgBox("The loop has run " & CStr(counter) & " times!")
    
  7. Press F5to run the program.

  8. Na caixa de texto, digite um número e clique no botão.

    Uma caixa de mensagem que exibe quantas vezes o número foi somado a ele mesmo antes de atingir 100 aparece.

  9. No menu Debug, clique em Stop Debugging para encerrar o programa.Mantenha este projeto aberto.Nós estamos prestes a voltarmos a ele.

Instrução Do....Until

A instrução Do...While repete um loop enquanto uma condição permanece True, mas às vezes, você pode querer que o código se repita até que uma condição se torne True.Você pode usar a instrução Do...Until da seguinte maneira:

Dim sum As Integer = 0
Do Until sum >= 100
  sum = sum + 10
Loop

Esse código lembra o código para a instrução Do...While, exceto que desta vez o código está avaliando a variável sum para ver se ela é igual ou maior que 100.

Tente-o!

Esse procedimento inicia onde "Para usar uma instrução Do...While" terminou.Se você não tiver concluído "Para usar uma intrução Do...While ", você deve concluí-lo antes de continuar.

Para usar uma instrução Do...Until

  1. Depois da linha MsgBox, adicione o seguinte código.

    Dim sum2 As Integer = 0
    Dim counter2 As Integer = 0
    Do Until sum2 >= 100
      sum2 = sum2 + CInt(Textbox1.Text)
      counter2 = counter2 + 1
    Loop
    MsgBox("The loop has run " & CStr(counter2) & " times!")
    
  2. Pressione F5 para executar a página.

  3. Na caixa de texto, digite um número e clique no botão.

    Uma segunda caixa de mensagem que exibe quantas vezes o número foi somado a ele mesmo antes que ficasse igual ou superior a 100 aparece.

Próximas etapas

Neste tópico, você aprendeu a usar os loops Do...While e Do...Until para repetir o código condicionalmente.Neste ponto, você pode ir para a próxima lição, Tornando um programa escolher entre duas possibilidades: Tarefas Tornando seu ações repetir do programa:.

Consulte também

Tarefas

Fazendo um programa repetir ações: Um loop com loop for... Next

Referência

Declaração Do...Loop (Visual Basic)