Preciso admitir que, no começo, meu código era bem básico, só atendia o que o exercício pedia. Mas aí, curiosa que sou, fui dar uma espiadinha no fórum. Resultado? Abri uns posts, vi uns feedbacks cheios de dicas bacanas e pensei: "Por que não complicar minha vida um pouquinho mais?".
Resultado: Demorei um tempão, o código ficou parecendo uma novela com tantas linhas, e eu tenho certeza que dava pra fazer algo mais enxuto. Mas foi o que teve pra hoje kkkkkk
def monitorar_vendas_multiplos_produtos(vendas):
if not vendas:
print("Nenhum produto registrado para vendas.")
return
maior_venda_quantidade = -1
produtos_maior_venda = []
for produto, quantidade in vendas.items():
if quantidade > maior_venda_quantidade:
maior_venda_quantidade = quantidade
produtos_maior_venda = [produto]
elif quantidade == maior_venda_quantidade:
produtos_maior_venda.append(produto)
if len(produtos_maior_venda) == len(vendas):
print("Todos os produtos tiveram a mesma quantidade de vendas.")
elif len(produtos_maior_venda) == 1:
print(f"O produto com maior venda foi: {produtos_maior_venda[0]} com {maior_venda_quantidade} unidades vendidas.")
else:
print(f"Os produtos com maior venda foram: {', '.join(produtos_maior_venda)} com {maior_venda_quantidade} unidades vendidas cada.")
# Exemplo de uso:
vendas_produtos = {}
while True:
produto = input("Digite o nome do produto (ou 'fim' para encerrar): ").strip()
if produto.lower() == 'fim':
break
while True:
try:
quantidade = int(input(f"Digite a quantidade vendida de {produto}: "))
vendas_produtos[produto] = quantidade
break
except ValueError:
print("Entrada inválida. Por favor, digite um número inteiro.")
monitorar_vendas_multiplos_produtos(vendas_produtos)
Exemplo de output:
Digite o nome do produto (ou 'fim' para encerrar): banana
Digite a quantidade vendida de banana: 5
Digite o nome do produto (ou 'fim' para encerrar): maçã
Digite a quantidade vendida de maçã: 3
Digite o nome do produto (ou 'fim' para encerrar): fim
O produto com maior venda foi: banana com 5 unidades vendidas.