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 (true
oufalse
). 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.