FC ConcursosFC Concursos

Questão FC373292

Um laço de repetição foi criado em Java utilizando os comandos abaixo. int i=0; while (i<=100){ System.out.println(i); i=i+10; } Pode-se afirmar corretamente que

Linguagens de Programação

FCC · 2019

Um laço de repetição foi criado em Java utilizando os comandos abaixo.

 

int i=0;

while (i<=100){

System.out.println(i);

i=i+10;

}

 

Pode-se afirmar corretamente que

  1. for(int i=0;i<=100;i++=10){System.out.println(i);} terá o mesmo resultado.
  2. os comandos System.out.println(i); e i=i+10; não precisam estar dentro das chaves do while.
  3. i=i+10 pode ser substituído por i+=10, sem alteração no resultado.
  4. for(int i=100;i<=0;i=i-10){System.out.println(i);} fará a mesma contagem, só que regressiva.
  5. a variável i terá o valor 100 após a execução terminar o laço de repetição.
Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

Na linha de incremento, a expressão \(i = i + 10\) pode ser escrita de forma mais concisa como \(i += 10\).

O operador += é um operador de atribuição composto que soma o valor à direita ao operando à esquerda e reatribui o resultado à variável. Em Java, para tipos primitivos como int, \(i += 10\) produz exatamente o mesmo valor que \(i = i + 10\).

No contexto do laço, ambos incrementos aumentam a variável em 10 a cada iteração, gerando a sequência 0, 10, 20, ..., 100. Não há diferença no comportamento nem no resultado final do loop ao usar uma forma ou outra.

Obs.: a equivalência vale para esse caso simples; em expressões mais complexas (com conversões de tipo ou efeitos colaterais) a avaliação pode exigir atenção, mas aqui não há impacto.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo