Laço de Repetição while
O laço while em C# é uma estrutura de controle que executa um bloco de código repetidamente enquanto uma determinada condição booleana for true. Diferente do laço for, o while é ideal para situações em que o número de iterações não é conhecido de antemão.
A principal característica do while é que a condição é testada antes da execução do bloco de código. Se a condição for false na primeira verificação, o corpo do laço nunca será executado.
Sintaxe
A sintaxe do laço while é simples e direta:
condição: Uma expressão booleana (trueoufalse). O laço continua enquanto esta expressão fortrue.
Exemplo Prático
Vamos supor que queremos ler a entrada do usuário até que ele digite a palavra "sair".
Análise do Exemplo:
A variável
entradaé inicializada como uma string vazia.A condição
entrada.ToLower() != "sair"é verificada. Na primeira vez,"" != "sair"étrue, então o laço começa.Dentro do laço, o programa solicita a entrada do usuário e a armazena na variável
entrada.O laço se repete, e a condição é verificada novamente com o novo valor de
entrada.Quando o usuário finalmente digita "sair", a condição se torna
false, e o laço é encerrado.
Cuidado com Laços Infinitos
Um erro comum ao usar o while é criar um laço infinito. Isso acontece se a condição de parada nunca for alcançada. É crucial garantir que alguma variável dentro da condição seja modificada no corpo do laço para que, em algum momento, a condição se torne false.
Exemplo de laço infinito (EVITAR):
Para corrigir, basta adicionar o iterador:
O laço while é fundamental para algoritmos onde a repetição depende de um estado que muda durante a execução, como processamento de dados, interação com o usuário ou espera por um evento.