Estrutura de Repetição - While
Assim como o for, o while gera uma loop de repetição de código. O que o diferencia do for é que ele é utilizado quando você não sabe exatamente quantas vezes o ciclo deve acontecer. No for, se você se lembra da sintaxe, o segundo bloco de execuções era um teste para verificar se a variável de controle já tinha atingido um valor previamente estabelecido, ou seja, quando montamos o comando já sabemos quantas vezes ele acontecerá. No while isso não é necessário.
Eu vou começar a falar dele com um primeiro exemplo que faz exatamente a mesma coisa do que criamos no tópico sobre for, ou seja, um programinha que exibirá um número de 1 a 5 na tela.
A sintaxe do while para isso é:
Executando, teremos:
Agora vou comentar o comando while:
Bem, nesse exemplo também sabemos, mesmo antes do ciclo começar, que ele acontecerá por 5 vezes, então ele parece ter exatamente a mesma função do for, mas vou dar um exemplo agora para demonstrar seu funcionamento quando não sabemos quantas vezes o ciclo acontecerá.
Crei um pequeno código para receber a idade do usuário a armazená-la numa variável de mesmo nome, conforme imagem abaixo:
Vejam como ficou a execução desse código:
Percebam que o programa foi perguntando a minha idade e eu fui inserindo vários valores, mas enquanto não inseri o 25, ele não saiu do loop. Vejam o código comentado:
Como ficou claro neste último exemplo, mesmo sem saber quantas iterações seriam necessárias, conseguimos criar um loop no código. Isso é o que diferencia o comando for do while. Com o primeiro você deve saber o número de repetições para estabelecer seu término. Com o segundo essa informação não precisa ser conhecida no início da execução.
Essas foram as duas estruturas de repetição do C# que selecionei para comentar nesse momento. Existe uma terceira, que é, na verdade, uma variação do for, chamada de foreach, e falarei dela no momento adequado, não se preocupem.