Pular para o conteúdo principal

Questão de Programação — Conceitos básicos de programação — VUNESP 2024

ProgramaçãoConceitos básicos de programação
Código
vu083850
Banca
VUNESP
Órgão
Prefeitura de Mogi das Cruzes - SP
Ano
2024
Nível
Superior
Cargo
Analista de Sistemas
A seguir é apresentado um código escrito na linguagem Javascript.let x = 1;for (let i = 0; i < 2; i++) {x = x << x;}É correto afirmar que a variável x assumirá, após o término do laço, o valor:
  1. A0
  2. B1
  3. C3
  4. D4
  5. E8
Revelar gabarito e comentário

GabaritoE — 8

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

JavaScript – Operador de deslocamento de bits (<<)

Gabarito: letra E. O código executa duas iterações do laço for, aplicando o operador << (shift left) com o valor atual de x como ambos operandos. O resultado final é 8.

Explicação passo a passo

  • Inicialmente, x = 1 (binário: 1).

  • 1ª iteração (i=0): x = 1 << 1. O operador << desloca os bits de 1 para a esquerda em 1 posição, resultando em 2 (binário 10).

  • 2ª iteração (i=1): x = 2 << 2. Deslocar 2 (binário 10) duas posições à esquerda produz 8 (binário 1000).

Após o término do laço, x vale 8.

Alternativa A — ❌ Incorreta

0 – Não há operação que zere o valor de x; as iterações produzem resultados positivos.

Alternativa B — ❌ Incorreta

1 – Esse seria o valor inicial, mas a operação de shift altera o valor a cada iteração.

Alternativa C — ❌ Incorreta

3 – Poderia ser confundido com 1 + 2, mas o operador << não é aditivo; é multiplicativo (x << y equivale a x * 2^y).

Alternativa D — ❌ Incorreta

4 – Seria o resultado se houvesse apenas uma iteração ou se o shift fosse menor; após duas iterações, o valor é 8.

Alternativa E — ✅ Correta ⟵ GABARITO

8 – Conforme demonstrado no cálculo acima.

PEGA ESSA DICA!

Lembre-se de que x << y equivale a multiplicar x por 2^y. A cada iteração, o valor de x dobra de acordo com o deslocamento.

Gabarito: letra E.

Link permanente: /questoes/vu083850