Desafio: Automatizando o Controle de Estoque
Você está gerenciando o estoque de um supermercado, e sua tarefa é garantir que o estoque de cada produto seja devidamente mantido e reabastecido quando necessário.
Se o nível de estoque de um item cair abaixo da quantidade mínima exigida, ele precisa ser reabastecido.
Além disso, se o nível de estoque de um item exceder um determinado limite, um desconto é aplicado e o item é marcado como "em promoção."
Tarefa
Swipe to start coding
Gerencie o estoque de uma mercearia repondo itens e aplicando descontos com base nos níveis de estoque. Utilize loops para atualizar o status de cada item.
- Utilize um
for
para percorrer cada item no dicionárioinventory
.- Para cada item, obtenha o estoque atual, o estoque mínimo necessário, a quantidade de reposição e o status de promoção.
- Utilize um
while
para repor o item até que seu estoque atinja ou ultrapasse o mínimo exigido. Aumente o estoque pela quantidade de reposição a cada iteração. - Após a reposição, verifique se o estoque excede o
discount_threshold
e se o item ainda não está em promoção. Se sim, defina o status de promoção comoTrue
. - Se o item já estiver em promoção e ainda exceder o limite, exiba uma mensagem indicando que ele já está com desconto.
Requisitos de Saída
- Para cada item, exiba:
Processing <item>...
- Se um desconto for aplicado:
<item> stock has exceeded <discount_threshold> units. Discount applied.
- Se o item já estiver em promoção:
<item> is already discounted.
- Após o processamento de todos os itens, exiba:
Final Inventory Report
Em seguida, para cada item:
<Item>: <current_stock> units (Min: <min_stock> units) - On sale: <on_sale>
Solução
Tudo estava claro?
Obrigado pelo seu feedback!
Seção 5. Capítulo 7