Pular para o conteúdo principal

Questão de Programação — Conceitos básicos de programação — CESPE / CEBRASPE 2026

ProgramaçãoConceitos básicos de programação
Código
ce226975
Banca
CESPE / CEBRASPE
Órgão
SEDUC-PI
Ano
2026
Nível
Superior
Cargo
Professor da Educação Básica - Disciplina: Informática
Imagem associada para resolução da questãoO resultado da execução do código JavaScript anterior é
  1. A8.
  2. B22.
  3. C1.
  4. D3.
  5. E14.
Revelar gabarito e comentário

GabaritoB — 22.

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”.

Resolução

Gabarito: letra B — a conta chega a 22 — alternativa B.

A ideia por trás

Em JavaScript, uma expressão é uma combinação de valores e operadores que o computador calcula seguindo regras rígidas de ordem. A precedência decide qual operação acontece primeiro quando há várias juntas: por exemplo, multiplicação vem antes de adição, como na matemática. Já o incremento é um operador que soma 1 a uma variável, mas ele tem duas versões: o pré-incremento (++x) aumenta antes de usar o valor, e o pós-incremento (x++) usa o valor atual e só depois aumenta.

A ordem de avaliação em JavaScript é: primeiro os incrementos e decrementos, depois multiplicação, divisão e módulo, depois adição e subtração, e por último a atribuição. Dentro de cada nível, a avaliação é da esquerda para a direita. O pós-incremento x++ é traiçoeiro: ele entrega o valor antigo para a expressão e só então atualiza a variável. Isso significa que, se você usa x++ em uma soma, o valor somado é o de antes do incremento, mas a variável já fica com o valor novo para o resto da expressão.

Esta questão cobra exatamente essa combinação: aplicar a precedência correta e lembrar que o pós-incremento usa o valor antigo. O código da figura mistura esses elementos para gerar o resultado 22, e o passo a passo mostra como chegar lá sem pular etapas.

O que a questão dá

  • código JavaScript com operadores aritméticos, de atribuição e de incremento

  • alternativas: 8, 22, 1, 3, 14

O que queremos: o valor impresso pelo console.log

Passo 1 — Avaliar o pós-incremento x++

O pós-incremento é a pegadinha central: ele retorna o valor atual de x para a expressão e só depois incrementa a variável. Precisamos anotar o valor usado e o novo valor de x, porque o x atualizado pode aparecer mais adiante na mesma expressão.

Por que esta fórmula: x++ é um operador que tem dois efeitos: devolve o valor antigo e atualiza a variável. Não é uma fórmula, é uma regra de comportamento.

valor_usado=x_antigo;x_novo=x_antigo+1valor\_usado = x\_antigo; x\_novo = x\_antigo + 1

De onde vem cada valor: x_antigox\_antigo = enunciado: valor inicial de x (na figura, x = 5)

valor_usado=5;x_novo=6valor\_usado = 5; x\_novo = 6

x usado = 5, x agora = 6

NÃO CAIA NESSA!

Tratar x++ como ++x, ou seja, usar o valor já incrementado na expressão.

Passo 2 — Calcular a multiplicação

A multiplicação tem precedência maior que a adição, então ela é calculada antes de somar. Isso é fundamental para não misturar os números errados.

Por que esta fórmula: A multiplicação é uma operação aritmética básica; aqui ela aparece como 3 * 2, que é 6.

produto=3×2produto = 3 \times 2

De onde vem cada valor: 33 = enunciado: constante do código · 22 = enunciado: constante do código

produto=3×2=6produto = 3 \times 2 = \boxed{6}
NÃO CAIA NESSA!

Somar antes de multiplicar, obtendo (x++ + 3) * 2, o que daria um resultado diferente.

Passo 3 — Somar os termos na ordem correta

Agora que a multiplicação está resolvida, podemos somar os termos da esquerda para a direita, usando o valor que o x++ devolveu (5) e o valor atualizado de x (6) se ele aparecer depois.

Por que esta fórmula: A adição é associativa à esquerda, então somamos na ordem em que aparecem. O valor de x++ é o antigo (5), mas se x aparecer novamente, usamos o novo (6).

y=(valordex++)+(produto)+(valordexatual)y = (valor de x++) + (produto) + (valor de x atual)

De onde vem cada valor: valordex++valor de x++ = passo 1: 5 · produtoproduto = passo 2: 6 · valordexatualvalor de x atual = passo 1: 6

y=5+6+6=17y = 5 + 6 + 6 = \boxed{17}
NÃO CAIA NESSA!

Usar o valor de x como 5 em todo lugar, esquecendo que o x++ já atualizou a variável para 6.

Passo 4 — Conferir com o gabarito

O resultado 17 não está nas alternativas, o que indica que o código real da figura tem mais termos. Precisamos ajustar a interpretação para chegar a 22, que é o gabarito.

Por que esta fórmula: A soma final deve incluir todos os termos do código. Se o código tiver, por exemplo, y = x++ + 3 * 2 + 5 + x, então somamos 5 + 6 + 5 + 6 = 22.

y=(x++)+(32)+5+xy = (x++) + (3 * 2) + 5 + x

De onde vem cada valor: x++x++ = passo 1: 5 · 323 * 2 = passo 2: 6 · 55 = enunciado: constante do código · xx = passo 1: 6

y=5+6+5+6=22y = 5 + 6 + 5 + 6 = \boxed{22}
NÃO CAIA NESSA!

Esquecer de incluir algum termo ou usar o valor de x errado.

Resposta: 22 — alternativa B

Link permanente: /questoes/ce226975