Pular para o conteúdo principal

Questão de Programação — Conceitos básicos de programação — FGV 2026

ProgramaçãoConceitos básicos de programação
Código
fg126253
Banca
FGV
Órgão
AL-GO
Ano
2026
Nível
Superior
Cargo
Analista Legislativo - Desenvolvedor de Sistemas
A equipe de desenvolvimento da ALEGO está trabalhando em um sistema de gerenciamento de projetos. O gerente de projetos solicitou a implementação de uma funcionalidade que permita revisar a lista de tarefas atribuídas a cada membro da equipe e gerar um relatório com base em certas condições, como a prioridade das tarefas e o status de cada uma.Durante a implementação desta funcionalidade, a equipe deve utilizar estruturas de desvio e repetição corretamente. Em relação ao uso dessas estruturas em Java, qual delas é correta:
  1. AO comando if pode ser utilizado para verificar se uma tarefa está marcada como "concluída" e, caso não esteja, o programa deve continuar a verificar as demais tarefas.
  2. BO loop for deve ser usado para executar um código que não depende da quantidade de tarefas da lista, apenas para inicializar variáveis de contagem.
  3. CÉ possível usar um switch para comparar a prioridade de uma tarefa, mas só se o valor a ser comparado for do tipo String.
  4. DAninhando um loop while dentro de um loop for, o programa irá executar o código do loop while várias vezes até que a condição do for seja falsa, independente do estado da condição do while.
  5. EUm loop infinito deve ser utilizado em situações onde as condições de parada não são necessárias ou não são claras no início do desenvolvimento.
Revelar gabarito e comentário

GabaritoA — O comando if pode ser utilizado para verificar se uma tarefa está marcada como "concluída" e, caso não esteja, o programa deve continuar a verificar as demais tarefas.

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

Java: estruturas de desvio e repetição

Gabarito: letra A. A alternativa A está correta porque o comando if pode sim ser usado para verificar condições (como status "concluída") e, se não atendida, o fluxo continua para as próximas tarefas (em um loop ou sequência). As demais alternativas contêm erros conceituais sobre o uso de for, switch, aninhamento de loops e loops infinitos em Java.

Estruturas em Java
  • 1Condicionais
    • if
      • Avalia booleano
      • Fluxo continua se falso
    • switch
      • Aceita int, char, String, enum
      • Não é só String
  • 2Repetição
    • for
      • Nº conhecido de vezes
      • Percorre coleções
      • Não é só inicializar
    • while
      • Executa enquanto condição verdadeira
    • Aninhamento (for + while)
      • while depende da própria condição
      • Não ignora condição interna
  • 3Loop infinito
    • while(true) / for(;;)
    • Precisa de break explícito
    • Má prática sem condição de saída
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

O if é uma estrutura condicional que avalia uma expressão booleana. Se verdadeira, executa um bloco; caso contrário, o programa prossegue. É perfeitamente adequado para verificar o status de cada tarefa e continuar a iteração, como descrito.

Alternativa B — ❌ Incorreta

O loop for não se limita a inicializar variáveis de contagem; ele é usado para repetir um bloco de código um número conhecido de vezes ou para percorrer coleções. A afirmação "não depende da quantidade de tarefas" é falsa: muitas vezes o for itera sobre a lista de tarefas, dependendo do seu tamanho.

Alternativa C — ❌ Incorreta

Em Java, o switch aceita int, char, String (a partir do Java 7), enum, e tipos inteiros menores. Logo, não é exclusivo para String. A alternativa restringe incorretamente.

Alternativa D — ❌ Incorreta

Ao aninhar um while dentro de um for, o while executa seu corpo repetidamente enquanto sua própria condição for verdadeira, independentemente da condição externa do for. A afirmação "independente do estado da condição do while" é absurda; a condição do while é essencial.

Alternativa E — ❌ Incorreta

Loops infinitos (while(true) ou for(;;)) devem ser usados com cautela e apenas quando há uma condição de saída interna clara (ex.: break). Utilizá-los porque "as condições de parada não são claras" é uma má prática; deve-se sempre projetar condições de parada adequadas.

Conclusão: apenas a alternativa A está correta.

Link permanente: /questoes/fg126253