Pular para o conteúdo

Serviço de Seleção do Pessoal da Marinha (SSPM) · Marinha do Brasil 2025

Questão 34 — Programação: Java — Operadores e Estruturas Condicionais

Programação Java — Operadores e Estruturas Condicionais

Serviço de Seleção do Pessoal da Marinha (SSPM) 2025

Marinha do Brasil · Quadro Técnico do Corpo Auxiliar da Marinha (CP-T) — Informática · Caderno Amarela

Gabarito disponível

Considerando o código JAVA apresentado abaixo, versão 17, assinale a opção que apresenta a saída da execução do código.

int x=1;int y=12;
x +=3;y %=9;
System.out.print(x++);
System.out.print(++y);
if (x>5)
if (y>5) System.out.print("x e y são > 5");
else System.out.print("x é <= 5");
Selecione uma alternativa

Resolução comentada

A saída é 44, pois o else pertence ao if interno e x>5 é falso.

x=1+3=4 e y=12%9=3. print(x++) imprime 4 e x passa a 5. print(++y) incrementa y para 4 e imprime 4. Como x>5 é falso (5 não é maior que 5), nada mais é impresso: o else pertence ao if interno (y>5), não ao externo. A saída é 44.

Análise das alternativas

A e B) Erradas: o else está associado ao if mais próximo, então não é executado quando o if externo é falso. B, C e E) Erradas: x++ imprime o valor antes do incremento (4, não 5). E) Errada: x>5 é falso, então nada é impresso depois de 44.

Referência: Java: operadores pré e pós-incremento, atribuição composta e regra do dangling else.

Resolução comentada do VaiConcursos.

Ver gabarito

Gabarito: D

Fonte: Gabarito preliminar: Gabarito final retificado — Informática — página 6