Oi, Penha, como vai?
A sua explicação sobre o motivo de o código original gerar uma execução sem fim foi precisa, identificando corretamente a ausência de uma instrução que alterasse o estado da variável usada na condição de parada. A correção inserida no bloco de código utilizando o operador de atribuição composta resolve o problema de maneira limpa, garantindo a saída segura do laço de repetição.
Uma dica válida para quando trabalhamos com a estrutura de repetição while envolve a criação de mecanismos complementares de interrupção forçada com o comando break. Em cenários de desenvolvimento, pode ser interessante estabelecer um limite máximo de tentativas ou um critério secundário de parada para evitar falhas no sistema se a variável principal falhar por algum motivo externo.
Se o objetivo do programa fosse buscar dados dentro de um banco de dados dinâmico até encontrar um registro específico, qual estratégia você adotaria para controlar a condição do while sem saber previamente o número exato de repetições necessárias?
Parabéns pelo excelente desempenho no desenvolvimento da atividade, obrigado por compartilhar o seu raciocínio com a comunidade do fórum e lembre-se de que estamos à total disposição para acompanhar os seus estudos.
Para saber mais:
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!