Em uma plataforma digital de servicos urbanos, um portal de cidade media calcula a media de consumo de agua…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Analisar programas para detectar e remover erros, ampliando a confiança na sua correção.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Em uma plataforma digital de servicos urbanos, um portal de cidade media calcula a media de consumo de agua por residencia utilizando o seguinte algoritmo descrito em pseudocodigo: soma = 0; para cada leitura na lista: soma = soma + leitura; media = soma / numero de leituras. Durante testes iniciais, o sistema retornou medias corretas para residencias com leituras diarias registradas. Contudo, ao processar casas sem nenhum registro de medicao, o programa travou com a mensagem 'divisao por zero'. Os estudantes passaram a elaborar diversos casos de teste para reproduzir o erro e validar a correcao no codigo. Identifique o caso de teste que melhor expõe o erro de divisao por zero no programa.
- A) Usar lista de leituras [100, -10, 50]
- B) Usar lista de leituras [0, 0, 0]
- C) Usar lista de leituras [30]
- D) Usar lista de leituras []
- E) Usar lista de leituras [15, 20, 25]
✅ Resposta correta: alternativa D
Resolução passo a passo
- O algoritmo calcula a media dividindo a soma pelo numero de leituras. A divisao por zero ocorre somente quando o numero de leituras e zero, ou seja, quando a lista esta vazia.
- Analisando os casos de teste, a lista vazia [] e a unica que tem zero leituras. Nela, a soma permanece 0 e o calculo fica 0 / 0, que provoca a divisao por zero.
- As demais alternativas tem pelo menos uma leitura, portanto o divisor nunca e zero. A alternativa A tem tres leituras, com valor negativo que nao gera divisao por zero. A alternativa B tem tres leituras iguais a zero, e a soma zero e dividida por 3, sem erro. A alternativa C tem uma leitura, e a media e 30. A alternativa E tem tres leituras validas, com media 20.
- Logo, o caso que melhor expoe o erro e a lista vazia, que reproduz exatamente a situacao de casas sem nenhum registro de medicao. Concluo que a resposta correta e D, em concordancia com o gabarito oficial.
💡 Dica: Analise o comportamento do algoritmo para diferentes listas de leituras, especialmente listas vazias.
Alternativa por alternativa
O aluno pode achar que valores negativos ou inconsistentes, como -10, causam a divisao por zero, confundindo erro de dado com erro de calculo.
O aluno pode acreditar que, por a soma ser zero, a divisao resulta em zero ou em erro, esquecendo que o divisor e o numero de leituras, que e 3.
Por que engana: O aluno pode nao perceber que a divisao por zero ocorre quando a lista de leituras esta vazia, e nao quando ha valores zero na lista.
O aluno pode pensar que uma lista com apenas um elemento ja e um caso especial que causa erro, sem perceber que o divisor 1 e valido.
Lista vazia gera numero de leituras = 0, causando divisao por zero conforme descrito no texto-base.
O aluno pode entender que qualquer lista com valores positivos e normal, mas nao reconhece que o problema depende apenas do numero de leituras e nao dos valores.
Raio-X da questão
divisao por zero em algoritmo
diagnostico
media aritmetica simples · estrutura de repeticao para soma
Estude como evitar divisao por zero em calculos de media.
O aluno pode nao perceber que a divisao por zero ocorre quando a lista de leituras esta vazia, e nao quando ha valores zero na lista.
ciencia_tecnologia
pensamento_critico
cotidiano
Questões parecidas com resolução
- Folhas de caderno e códigos rabiscados se espalham pela mesa de Clara, estudante de informática. Ela tentou fazer um…
- Em uma plataforma de uma escola pública, um algoritmo deve calcular a média das notas de uma turma. A turma pode não ter…
- Identifique a alternativa que apresenta um erro comum em um programa de cálculo simples que soma os números de uma…
- Ao testar um algoritmo que soma elementos de um vetor usando um índice, quais casos de teste detectam erros de índice…
- Em uma estufa, um programa analisa a umidade de cinco canteiros, na ordem indicada, e aciona a irrigação quando a…
- Durante uma feira de ciências, equipes de estudantes mostraram dois algoritmos escritos em linguagem de pseudocódigo…
🔎 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
