Acerca das linguagens de desenvolvimento JavaScript, HTML e ...

Próximas questões
Com base no mesmo assunto
Q602226 Programação
Acerca das linguagens de desenvolvimento JavaScript, HTML e CSS, julgue o item subsequente.

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;
}
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: E (Errado)

Vamos entender o tema em questão. A questão aborda as estruturas de repetição for e while na linguagem de programação JavaScript. Ambas são utilizadas para executar instruções repetidamente enquanto uma condição é verdadeira.

A estrutura for é usada quando se sabe antecipadamente o número de vezes que o bloco de código deve ser executado. Ela possui três partes principais:

  • Inicialização: onde geralmente se determina o valor inicial de uma variável de controle
  • Teste de continuação do loop: uma condição que será avaliada antes de cada iteração; se verdadeira, o loop continua
  • Incremento: a atualização da variável de controle, que ocorre após a execução do código no loop

Já a estrutura while é mais adequada quando o número de iterações não é conhecido previamente. Ela possui apenas a condição de continuação do loop, que é testada antes de cada iteração.

Neste contexto, o formato padrão equivalente da estrutura while com relação ao for teria o seguinte aspecto:

inicialização;
while (testeDeContinuaçãoDoLoop) {
    instrução;
    incremento;
}

Com base nessa compreensão, a alternativa apresentada na questão transcreve diretamente a condição e o incremento da estrutura for para o while, mas omite a parte crucial que é a inicialização. No while, a inicialização deve ocorrer antes da declaração do loop, e não dentro dele. Portanto, o formato apresentado na questão está errado, pois ignora essa etapa fundamental da inicialização da variável de controle do loop.

É essencial entender que, embora ambas as estruturas de repetição possam frequentemente ser usadas de maneira intercambiável, elas têm diferenças importantes em como são escritas e como funcionam. Assim, ao converter um loop for para um loop while, é necessário adaptar a inicialização da variável de controle para fora do loop while, manter a condição de continuação do loop como a expressão do while e colocar o incremento ou atualização da variável de controle dentro do bloco de código do loop.

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

inicialização; while (testeDeContinuaçãoDoLoop) {    instrução;    incremento; }

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