1
resposta

[Dúvida] Meus Códigos (Com dúvida em WHILE)

Olá, boa tarde. Tudo bem?

Vou deixar em print os códigos que desenvolvi (dei uma mexida para poder treinar fora das instrução com o mesmo resultado).Exercícios 1-8
Exercícios 9-13
Minha dúvida está justamente no EXERCÍCIO 10. Segue o código.

// Exercício 10
let continuar = true
while (continuar) {
let nota = parseInt(Math.random() * 10 + 1);
if (nota >= 7) {
alert(Sua nota é ${nota} e você foi aprovado);
} else {
alert(Sua nota é ${nota} e você foi reprovado);
}
}

Preciesei criar uma variável TRUE para que o loop fosse realizado diversas vezes em apenas uma execução de teste.
Essa variável ela funciona mandando o WHILE continuar fazendo o loop dentro das condições imposta no IF e ELSE?
Por que ele precisou estar em cima do continuar?
Poderia me explicar melhor como funciona o WHILE?

1 resposta

O while olha para o valor dentro dos parênteses. Enquanto aquele valor for true, ele executa tudo o que está entre as chaves { }. Como você definiu let continuar = true e não mudou esse valor dentro do loop, ele ficará repetindo para sempre
Ele precisa ficar em cima porque o while faz uma pré-verificação antes de rodar a primeira vez, ele precisa saber se a condição é válida. Se a variável não for declarada antes, o programa vai dar problema.

Uma dica para saber quando usar o while: ele é ideal para situações em que você não sabe quantas vezes algo vai se repetir