Laboratório 06 — Oficina de lógica: Dados, sequências e busca
Propósito
Este laboratório transforma as cinco aulas do módulo em uma investigação prática. Você não deve apenas “fazer rodar”. A entrega precisa mostrar previsões, traços, casos de fronteira e justificativas.
Conceitos trabalhados
Sequências, posições e índices, Encontrar mínimo e máximo sem mágica, Busca linear: procurar um item passo a passo, Contagem e frequência, Classificar e agrupar registros
Cenário
Você recebeu a tarefa de construir uma pequena regra de classificação para um sistema escolar fictício. A especificação inicial está propositalmente incompleta: o trabalho começa fazendo perguntas, definindo entradas e limites e só depois escrevendo a solução.
Etapa 1 — especificação
- Escreva o objetivo em uma frase que possa ser verificada.
- Liste entradas, saídas, restrições e casos de fronteira.
- Separe o problema em etapas menores.
- Escreva pelo menos cinco exemplos com resultado esperado antes de criar código.
Etapa 2 — representação
Escolha a representação mais adequada ao conteúdo do módulo: pseudocódigo, tabela de decisão, tabela de traçado, lista de estados ou fluxograma textual. Explique por que essa representação ajuda neste caso.
Etapa 3 — implementação de verificação
casos = [
{"valor": 5, "esperado": "baixo"},
{"valor": 7, "esperado": "medio"},
{"valor": 9, "esperado": "alto"},
]
def classificar(valor):
if valor >= 9:
return "alto"
if valor >= 7:
return "medio"
return "baixo"
for caso in casos:
obtido = classificar(caso["valor"])
print(caso["valor"], obtido, obtido == caso["esperado"])
O código acima é apenas uma estrutura de teste. Adapte as regras ao problema que você especificou. O ponto principal é manter lado a lado entrada, resultado esperado e resultado obtido.
Etapa 4 — casos obrigatórios
- um caso normal de cada caminho relevante;
- um caso exatamente em cada fronteira;
- um caso imediatamente abaixo e acima de pelo menos uma fronteira;
- um caso inválido ou fora da pré-condição;
- um caso escolhido para tentar quebrar sua própria regra.
Etapa 5 — explicação
Escreva um parágrafo respondendo: qual era a parte mais ambígua do problema? qual regra resolveu a ambiguidade? qual teste trouxe mais informação? o que mudaria se uma restrição fosse alterada?
Critério de conclusão
O laboratório está concluído quando outra pessoa consegue ler sua especificação, reproduzir os casos e obter as mesmas decisões sem precisar perguntar o que você “quis dizer”.
Avaliação com validação humana
Receba nota e feedback individual sobre esta atividade. Este serviço é opcional e não é necessário para concluir o curso ou receber o certificado gratuito.
Entrar para solicitar