Acerca das linguagens de desenvolvimento JavaScript, HTML e ...
Considere os comandos a seguir, que especificam, em JavaScript, o formato padrão de cabeçalho da estrutura for.
for (inicialização; testeDeContinuaçãoDoLoop; incremento)
instrução;
Nesse caso, o correto formato padrão equivalente da estrutura while, nessa linguagem, é o mostrado a seguir.
while (testeDeContinuaçãoDoLoop) {
instrução;
incremento;
}
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Vamos analisar a questão, que envolve o uso das estruturas de repetição for e while na linguagem de programação JavaScript. A pergunta é sobre a equivalência entre essas duas estruturas de repetição.
A estrutura for em JavaScript tem o seguinte formato:
for (inicialização; testeDeContinuaçãoDoLoop; incremento) {
instrução;
}
Já a estrutura while deve seguir a seguinte lógica:
inicialização;
while (testeDeContinuaçãoDoLoop) {
instrução;
incremento;
}
Agora, vamos para o gabarito:
Alternativa Correta: E - Errado
Justificativa:
A estrutura apresentada na questão para o while não inclui a inicialização fora do laço, o que é essencial para a correta equivalência ao for. No while, a inicialização precisa acontecer antes do início do laço, de modo que, ao entrar no while, a variável já esteja definida.
Dessa forma, o formato proposto na questão está incorreto porque não conta com a inicialização fora do laço while.
Entendendo as Alternativas:
C - Certo: Está incorreta porque a inicialização não está fora do laço while, o que torna a conversão do for para while incompleta e, portanto, errada.
E - Errado: Está correta porque o formato do while dado na questão não é equivalente ao do laço for mencionado.
Ao resolver questões desse tipo, é importante lembrar que o for e o while podem realizar as mesmas operações, mas as abordagens na implementação diferem, especialmente em como são inicializados e como tratam o incremento das variáveis.
Gostou do comentário? Deixe sua avaliação aqui embaixo!
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
O incremento dentro do laço não faz diferença alguma uma vez que "testeDeContinuaçãoDoLoop" não o considera no momento de avaliar se o laço continua ou não.
The for loop has the following syntax:
for (statement 1; statement 2; statement 3) {code block to be executed
}
Statement 1 is executed before the loop (the code block) starts.
Statement 2 defines the condition for running the loop (the code block).
Statement 3 is executed each time after the loop (the code block) has been executed.
Fonte: http://www.w3schools.com/js/js_loop_for.asp
Qual o erro desta questão? A falta de chaves para delimitar o bloco de execução do for statement?
sempre caio nessa merda
falta inicializar
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo