Descrição
MAPA – LINGUAGEM DE PROGRAMAÇÃO – 54_2025
Período:03/11/2025 08:00 a 07/12/2025 23:59 (Horário de Brasília)
Status:ABERTO
Nota máxima:5,00
Gabarito:Gabarito não está liberado!
Nota obtida:
1a QUESTÃO
20/11/2025, 16:03 Unicesumar – Ensino a Distância
about:blank 1/3
Estudante, nesta atividade, você é convidado a verificar como a disciplina em questão pode contribuir para a sua experiência e formação profissional. Por esse motivo, voc
consiste em colocar em execução os conteúdos vistos na teoria, momento em que se verifica se os objetivos traçados foram, de fato, alcançados.
A Loja Ágil, um e-commerce nacional, processa em média 10 a 15 mil pedidos por dia. Um script legado em Python é executado por agendamento noturno (cron) para ge
(i) faturamento diário,
(ii) taxa de aprovação de pedidos, e
(iii) previsão de ocupação do centro de distribuição.
Nas últimas semanas, os relatórios passaram a apresentar divergências — o total faturado está abaixo do esperado, e a contagem de embalagens “altas” (≥ 50 cm) parece
A equipe de TI identificou que dois laços de repetição concentram a regra de negócio:
(a) um laço while, que percorre a lista de pedidos para somar o valor de pedidos elegíveis (apenas os com status “pago” e não cancelados, respeitando um limite mínimo
(b) um laço for com range, que conta quantas embalagens têm altura ≥ 50 cm – métrica utilizada na tarifação do frete e planejamento de espaço.
As listas podem não estar ordenadas por status (pago/pendente/cancelado) e podem conter mistura de estados na mesma execução. A hipótese é que erros no controle d
e subcontagem nos relatórios.
Regras de negócio relevantes
• Pedido ‘válido’ para faturamento: status == ‘pago’ e cancelado == False; pedidos cujo o valor esjeta abaixo do limite mínimo (limite) não são incluídos no total.
• Os pedidos podem chegar fora de ordem (ex.: um ‘pendente’ entre dois ‘pago’); a varredura não deve interromper-se ao encontrar um status diferente.
• A contagem de embalagens altas (altura ≥ 50 cm) é usada para prever custo de frete e para alocar docas/estantes; a subcontagem gera rupturas logística.
• Os laços devem assegurar progresso (evitar loops infinitos) e percorrer todos os elementos das coleções, incluindo o índice 0, lembrando que o limite superior do interv
• Restrição: não alterar a estrutura de dados; corrija apenas as condições e as atualizações dos laços, fornecendo justificativa técnica para cada alteração.
Exemplo de parâmetros operacionais.
• limite = 100.0 (valor mínimo para entrar no faturamento)
• Altura mínima considerada ‘alta’ = 50 cm
Base de dados (exemplo mínimo para teste)
pedidos =
” id “: 101, ” status “:” pago ” , ” valor “: 120.0, ” cancelado “: False, ” id “: 102, ” status “:” pago ” , ” valor “: 80.0, ” cancelado “: True, ” id “: 103, ” status “:” pendente ”
alturas =
55, 48, 50, 39, 72
# em centímetros
Trecho do código a ser auditado
Parte A (while) — consolidação de pedidos “pagos”:
i = 0
total = 0.0
validos = 0
# Enquanto houver pedido “pago”, somar total e contar válidos
while i < len(pedidos) and pedidos
i
” status ”
== “pago”:
total += pedidos
i
” valor ”
if not pedidos
i
” cancelado ”
:
validos += 1
# (intencionalmente sem i += 1)
Parte B (for) — contagem de embalagens “altas” (≥ 50 cm):
contagem_altos = 0
# Conta quantas alturas são >= 50
for j in range(1, len(alturas)):
if alturas
j
>= 50:
contagem_altos += 1
20/11/2025, 16:03 Unicesumar – Ensino a Distância
about:blank 2/3
O que você deve entregar:
1) Classificação e propósito dos laços:
• Explique, utilizando linguagem técnica, o propósito da Parte A (while) e da Parte B (for).
• Classifique cada laço como condicional ou contado, justificando com base no material:
• Laços condicionais dependem de uma condição booleana (while);
• Laços contados executam um número conhecido de vezes, definido por meio de um range (for).
2) Achados de auditoria — problemas e riscos:
Localize e descreva pelo menos 03 (três) problemas no comportamento do código, incluindo obrigatoriamente:
• (a) Risco de loop infinito na Parte A e o motivo.
Dica: em laços while, a atualização da variável de controle é imprescindível para garantir progresso e evitar repetição indefinida.
• (b) Perda de dados na Parte B devido aos limites do range: o índice 0 fica de fora quando o laço se inicia em 1, e o limite superior do range é exclusivo.
Mostre o impacto desso comportamento na variável contagem_altos, utilizando o exemplo fornecido.
3) Correções propostas (escreva o código):
Reescreva apenas as condições e as atualizações necessárias dos laços, preservando o resto do script, de forma a garantir:
• (i) Término correto do laço da Parte A (sem risco de loop infinito).
• (ii) A cobertura completa dos dados na Parte B, incluindo o índice 0 e respeitando o fato de quem o que o fim do range é exclusivo.
Formato esperado (substitua pelos seus ajustes):
# Parte A (ajustada)
while <condicao_corrigida>:
…
i += 1
# Parte B (ajustada)
for j in range(<inicio_corrigido>, <fim_corrigido>):
…
4) Critérios de escolha: while × for:
Argumente sobre a preferência pelo uso de laço de repetição while (critério de parada por condição, iterações desconhecidas) e quando preferir for com range (iterações
IMPORTANTE:
Acesse o link do vídeo que o professor da disciplina gravou com orientações para ajudá-lo nesse processo de criação e desenvolvimento. O acesso deverá ser realizado em
Responda à atividade seguindo como roteiro os tópicos elencados anteriormente.
A entrega deve ser feita exclusivamente por meio do Formulário de entrega da atividade MAPA disponível no material da disciplina.
Antes de enviar sua atividade, certifique-se de que respondeu a todas as perguntas e realize uma cuidadosa correção ortográfica.
Após o envio, não são permitidas alterações ou modificações. Logo, você tem apenas uma chance de enviar o arquivo corretamente. Revise bem antes de enviar!
Lembre-se de que evidências de cópias de materiais, incluindo de outros estudantes, sem devidas referências, serão inquestionavelmente zeradas. As citações e referência
Não são permitidas correções parciais no decorrer do módulo, ou seja, o famoso: “Professor, veja se minha atividade está certa?”. Isso invalida seu processo avaliativo. Lem
Procure sanar suas dúvidas junto à mediação em tempo hábil sobre o conteúdo exigido na atividade, de modo que consiga realizar sua participação.
Atenção ao prazo de entrega. Evite enviar a atividade em cima do prazo. Você pode ter algum problema com internet, computador, software, etc., e os prazos não serão fl
Bons estudos!
Em caso de dúvidas, encaminhar mensagem ao seu professor mediador.
ALTERNATIVAS
Nenhum arquivo enviado.








Avaliações
Não há avaliações ainda.