Questão de Programação — Java — Quadrix 2023
- Código
- qg029839
- Banca
- Quadrix
- Órgão
- CRQ 4ª Região-SP
- Ano
- 2023
- Nível
- Superior
- Cargo
- Profissionais de Atividade de Suporte - Analista de Sistemas (Programação)

- CCerto
- EErrado

GabaritoE — Errado
Gabarito: E — ERRADO. A afirmação está incorreta porque o código apresentado não contém nenhuma estrutura de repetição (laço). O programa utiliza apenas estruturas de seleção — um switch e um if — para decidir qual operação aritmética executar, mas não há while, do...while, for ou for each no código. A banca tenta confundir o candidato ao sugerir que existem duas estruturas de repetição, quando na verdade não existe nenhuma.
O código em questão é uma calculadora simples que lê dois números e uma operação, e executa o cálculo correspondente. Vamos analisar a estrutura do programa:
Entrada de dados: utiliza Scanner para ler os dois números (double) e a operação (int).
Seleção: o comando switch (operacao) verifica o valor da variável operacao e executa o case correspondente (1 = soma, 2 = subtração, 3 = multiplicação, 4 = divisão). Dentro do case 4, há um if que verifica se o divisor é diferente de zero.
Saída: imprime o resultado.
Nenhum desses comandos é uma estrutura de repetição. As estruturas de repetição em Java são:
while: repete um bloco enquanto uma condição for verdadeira.
do...while: executa o bloco ao menos uma vez e repete enquanto a condição for verdadeira.
for: repete um bloco por um número definido de vezes.
for each: itera sobre os elementos de uma coleção ou array.
O switch e o if são estruturas de seleção (ou condicionais), que executam um bloco de código uma única vez com base em uma condição. Elas não repetem nada.
A pegadinha da banca é justamente essa: o candidato pode confundir o switch (que tem vários case) com uma estrutura de repetição, ou pensar que o if dentro do case 4 é um laço. Mas nenhum deles é. O switch é uma estrutura de seleção múltipla, e o if é uma seleção simples. Nenhum dos dois repete instruções.
Para fixar: estruturas de repetição = laços (while, do...while, for, for each); estruturas de seleção = if, else, switch. O código só tem seleção.
A afirmação diz que existem duas estruturas de repetição no código. Isso é falso. O código contém:
Um switch (estrutura de seleção múltipla);
Um if dentro do case 4 (estrutura de seleção simples);
Nenhum laço (while, do...while, for, for each).
Portanto, o número de estruturas de repetição é zero, não duas. A banca tenta induzir o candidato a contar o switch e o if como laços, mas eles são estruturas de seleção, não de repetição.
Para identificar estruturas de repetição em Java, procure pelas palavras-chave while, do, for (incluindo o for each). Se o código só tiver if, else, switch, case, break, default, são estruturas de seleção — não repetição. Na prova, sublinhe essas palavras-chave e conte quantas vezes aparecem.
Gabarito: E — ERRADO.
Link permanente: /questoes/qg029839