Pesquisadores de um município implementaram um sistema móvel para que cidadãos registrem ocorrências de…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Explorar e construir a solução de problemas por meio de refinamentos, utilizando diversos níveis de abstração desde a especificação até a implementação.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Pesquisadores de um município implementaram um sistema móvel para que cidadãos registrem ocorrências de buracos nas vias urbanas. No nível de especificação, definiram apenas: “Registrar ocorrência de buraco”. Em seguida, elaboraram um pseudocódigo de nível intermediário com estas etapas: 1. Capturar dados do usuário e localização 2. Validar dados 3. Autenticar usuário 4. Enviar pacote ao servidor 5. Exibir mensagem de confirmação Na fase de implementação, já criaram funções para captura e autenticação. Contudo, perceberam que o passo 2 ainda está muito genérico e precisa ser refinado antes de codificar. Analise o texto-base e identifique qual refinamento de nível intermediário deve ser aplicado ao passo 2 “Validar dados” para aproximar a especificação da sua futura implementação?
- A) Agrupar os passos “Capturar dados” e “Autenticar usuário” em uma única rotina para simplificar o pseudocódigo
- B) Especificar no passo 2 as mensagens de erro que serão exibidas em cada situação de falha
- C) Transformar o passo “Enviar pacote ao servidor” em uma função assíncrona para otimizar desempenho
- D) Subdividir o passo “Validar dados” em checar formato das coordenadas e verificar integridade da imagem
- E) Definir no passo 2 um fluxo de tratamento de exceções para falhas de conexão com o servidor
✅ Resposta correta: alternativa D
Resolução passo a passo
- O enunciado pede o refinamento do passo 2 "Validar dados" para aproximá-lo da implementação futura, ou seja, trocar uma etapa genérica por verificações concretas que possam ser codificadas. Passo 2: A alternativa D faz exatamente isso ao subdividir "Validar dados" em duas verificações específicas: checar o formato das coordenadas e verificar a integridade da imagem. Cada uma vira uma rotina com entradas, critérios e saídas bem definidos. Passo 3: As demais alternativas não refinam o passo 2. A alternativa A agrupa passos, o que vai na direção contrária ao refinamento. A alternativa C trata de desempenho do envio ao servidor, que é outro passo. A alternativa B fala de mensagens de erro, que são um detalhe de saída e não a decomposição da validação. A alternativa E trata de falhas de conexão, que pertencem ao envio ao servidor e não à validação dos dados. Passo 4: Conclusão: a alternativa D é a que melhor aproxima a especificação intermediária do código, e coincide com o gabarito oficial.
💡 Dica: Analise cada etapa do pseudocódigo e identifique como detalhar a validação dos dados.
Alternativa por alternativa
O aluno acredita que refinar um pseudocódigo é reduzir o número de etapas, juntando passos para deixá-lo mais simples. Com isso, confunde simplificação com detalhamento, que é o que a questão pede.
O aluno entende que refinar a validação é definir o que o usuário verá quando algo der errado. Assim, foca na saída de erro e não na lógica de verificação que precisa ser codificada.
Por que engana: Confundir refinamento de etapas com agrupamento ou aspectos não relacionados à validação de dados.
O aluno associa refinamento a otimização de desempenho e acredita que mudar o envio para assíncrono melhora a especificação. Porém, o foco da questão é o passo 2, não o passo 4.
Esse refinamento detalha exatamente as duas validações necessárias, ligando especificação ao código futuro.
O aluno confunde validação de dados com tratamento de falhas de comunicação e pensa que tratar exceções de conexão no passo 2 é o refinamento necessário. Essas falhas pertencem ao envio ao servidor, não à validação.
Raio-X da questão
refinamento de pseudocódigo
avaliacao
pseudocódigo e algoritmos · validação de dados
estudo sobre detalhamento e refinamento de algoritmos e pseudocódigos
Confundir refinamento de etapas com agrupamento ou aspectos não relacionados à validação de dados.
ciencia_tecnologia
pensamento_critico
cotidiano
Questões parecidas com resolução
- Ao decompor um algoritmo que recebe dados de cadastro escolar, qual subrotina deve ser isolada para verificar tipos e…
- Ao decompor um algoritmo que valida entradas de formulário com senha e e-mail, qual subtarefa deve isolar a verificação…
- Ana, ao programar, percebeu que os dados de entrada devem ser verificados antes de serem processados. Qual técnica ela…
- Durante a validação de um aplicativo de transporte escolar, a equipe definiu que cada aviso de chegada deveria ser…
- No desenvolvimento de um aplicativo, os programadores precisam criar um algoritmo que receba dados do usuário. Quais…
- Dados ilustrativos: um grupo de voluntários criou requisitos para um app de reserva de quadras em espaço comunitário…
🔎 Procurar outra questão
Procure no banco do GeraProva pelo tema ou por um trecho do enunciado. Cada questão já vem com resolução comentada e a análise de cada alternativa.
Professor: monte a prova com questões como esta, com gabarito e folha de respostas, em 30 segundos. Ver planos · Blog
