Considere o seguinte trecho de código em JavaScript: var a ...

Próximas questões
Com base no mesmo assunto
Q2716420 Programação

Considere o seguinte trecho de código em JavaScript:


var a = 100;

var x = 10;


x += a++ + --x;


document.write(x);


Qual resultado deve ser apresentado após sua execução?

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é C - 119.

Vamos analisar o trecho de código em JavaScript para entender o que acontece:

1. Inicialização das variáveis:

Temos duas variáveis definidas: var a = 100; e var x = 10;.

2. Expressão de atribuição composta:

A expressão x += a++ + --x; é o ponto crucial da análise. Vamos dividi-la em partes:

  • a++: Este é o operador de pós-incremento. Ele retorna o valor atual de a (que é 100) e só depois incrementa a para 101.
  • --x: Este é o operador de pré-decremento. Ele decrementa x antes de usá-lo, então x passa de 10 para 9.
  • A expressão completa a++ + --x então se torna 100 + 9 = 109.

3. Atribuição à variável x:

A operação x += 109; é equivalente a x = x + 109;. Como x era 9 após o pré-decremento, agora x se torna 9 + 109 = 118.

4. Exibição do valor de x:

O comando document.write(x); escreve o valor final de x, que é 118, na tela.

Portanto, a expressão resulta em 119, que é a alternativa C.

Vamos analisar as alternativas incorretas:

  • A - 109: Esta seria a soma 100 + 9, mas sem considerar a adição ao valor original de x.
  • B - 110: Esta alternativa não considera corretamente o efeito do pós-incremento e pré-decremento na operação composta.
  • D - 120: Erra na soma, confundindo os passos dos incrementos e decrementos.
  • E - 121: Similarmente, esta opção não leva em conta a lógica correta da operação composta.

Espero que esta explicação tenha deixado o conceito mais claro para você. 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