Projete a assinatura e descreva em alto nível um algoritmo generalizado que calcule o custo total de uma lista…
Publicado por Alexandre Lombardi dos Santos, fundador do GeraProva
Aplicar a estratégia de decomposição para resolver problemas complexos, dividindo esse problema em partes menores, resolvendo-as e combinando suas soluções.
Fonte: Base Nacional Comum Curricular (MEC).Questão
Projete a assinatura e descreva em alto nível um algoritmo generalizado que calcule o custo total de uma lista de itens aplicando descontos variados: por categoria, por quantidade e por promoção temporária. Indique entradas, parâmetros, saída e passos principais.
✍️ Questão dissertativa: veja abaixo a resposta esperada e a explicação.
Resposta esperada
Assinatura sugerida: calcularCusto(itens: coleção, descontoPorCategoria: função, descontoPorQuantidade: função, promocaoAtiva: função) -> número. Entradas: itens (cada item tem preço, categoria, quantidade); parâmetros: três funções que retornam fator ou valor de desconto; saída: número (custo total). Passos principais: 1) Inicializar total = 0. 2) Para cada item em itens: calcular precoBase = item.preco * item.quantidade. 3) aplicarDescontoCategoria = descontoPorCategoria(item.categoria, precoBase). 4) aplicarDescontoQuantidade = descontoPorQuantidade(item.quantidade, precoBase - aplicarDescontoCategoria). 5) aplicarPromocao = promocaoAtiva(item, precoBase - aplicarDescontoCategoria - aplicarDescontoQuantidade). 6) itemFinal = precoBase - aplicarDescontoCategoria - aplicarDescontoQuantidade - aplicarPromocao; somar ao total. 7) Tratar valores nulos e limites (desconto máximo, não negativo). 8) Retornar total. Observações: ao receber funções de desconto, o algoritmo fica genérico para diferentes regras comerciais; a ordem de aplicação deve ser definida e documentada para consistência.
Explicação
A solução proposta apresenta uma abordagem estruturada e modular, permitindo a flexibilidade na aplicação de diferentes regras de desconto através de funções. A sequência de passos garante que todos os descontos sejam calculados de maneira ordenada e que o total final seja preciso, considerando cada tipo de desconto. Além disso, a inclusão de validações para valores nulos e limites assegura que o algoritmo opere dentro de parâmetros válidos, evitando erros de cálculo.
Raio-X da questão
cálculo de custo com descontos
avaliacao
cálculo de porcentagem · lógica de programação
Revisar conceitos de algoritmos e estruturas de dados.
O aluno pode confundir a aplicação de descontos por categoria com a aplicação de descontos por quantidade, resultando em um cálculo incorreto do custo total.
ciencia_tecnologia
pensamento_critico
abstrato
Questões parecidas com resolução
- Por que fragmentar um arquivo em pacotes reduz o impacto de falhas durante a transmissão em uma rede?
- Ao decompor um algoritmo que transmite pacotes em uma rede, qual subtarefa deve implementar o cálculo e a verificação do…
- Proponha uma decomposição em subtarefas e forneça um esboço de pseudocódigo para um algoritmo que identifica leituras…
- Em um algoritmo de agendamento com variáveis globais, ao aplicar decomposição para reduzir acoplamento entre módulos…
- Ao decompor um algoritmo que recebe dados de cadastro escolar, qual subrotina deve ser isolada para verificar tipos e…
- Qual é o principal benefício da decomposição de um algoritmo em subrotinas (funções) ao lidar com um problema complexo?
🔎 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
