GERENCIAMENTO DE ESTOQUE EM PYTHON (DESAFIO #3)
SITUAÇÃO PROBLEMA DO ESTOQUE
Como gerente de um depósito, enfrento dificuldades no controle manual de estoque que resultam em divergências entre o inventário físico e os registros. A falta de um sistema organizado leva a erros frequentes na contagem de produtos, dificuldade em acompanhar entradas e saídas, e atrasos na identificação de itens com estoque esgotado. Necessito de uma solução que permita registrar, atualizar e consultar as quantidades de produtos de forma precisa e eficiente.
REQUISITOS DO PROGRAMA DO ESTOQUE
- O programa deve ser desenvolvido em python;
- O estoque deve permitir registrar um número ilimitado de produtos;
- Para cada produto, deve ser possível armazenar a quantidade em estoque (número inteiro positivo);
- O sistema deve oferecer três operações principais: adicionar produtos, remover produtos e consultar estoque;
- Ao final de cada operação, o programa deve voltar ao menu principal até que o usuário escolha sair;
- Quando o usuário optar por sair, o programa deve exibir uma mensagem de encerramento.
ENTRADAS
Menu de Opções:
1 - Adicionar produto
2 - Remover produto
3 - Consultar produto
4 - Sair
Escolha uma opção: 1
Digite o nome do produto a ser adicionado: Café
Digite a quantidade do produto a ser adicionada: 10
SAÍDA
Café adicionado ao estoque com 10 unidades.
Menu de Opções:
1 - Adicionar produto
2 - Remover produto
3 - Consultar produto
4 - Sair
Escolha uma opção: 3
Digite o nome do produto a consultar: Café
Café tem 10 unidades no estoque.
FUNÇÃO ADICIONAR PRODUTO
def adicionar_produto(estoque):
nome_produto = input("Digite o nome do produto a ser adicionado: ")
quantidade = int(input("Digite a quantidade do produto a ser adicionada: "))
if nome_produto in estoque:
estoque[nome_produto] += quantidade
return f"{quantidade} unidades de {nome_produto} adicionadas ao estoque."
else:
estoque[nome_produto] = quantidade
return f"{nome_produto} adicionado ao estoque com {quantidade} unidades."
FUNÇÃO REMOVER PRODUTO
def remover_produto(estoque):
nome_produto = input("Digite o nome do produto a ser removido: ")
if nome_produto in estoque:
quantidade = int(input(f"Digite a quantidade de {nome_produto} a ser removida: "))
if quantidade <= estoque[nome_produto]:
estoque[nome_produto] -= quantidade
if estoque[nome_produto] == 0:
del estoque[nome_produto]
return f"{nome_produto} removido completamente do estoque."
return f"{quantidade} unidades de {nome_produto} removidas do estoque."
else:
return "Quantidade a remover excede o estoque disponível."
else:
return f"{nome_produto} não encontrado no estoque."
FUNÇÃO CONSULTAR PRODUTO
def consultar_produto(estoque):
nome_produto = input("Digite o nome do produto a consultar: ")
if nome_produto in estoque:
return f"{nome_produto} tem {estoque[nome_produto]} unidades no estoque."
else:
return f"{nome_produto} não encontrado no estoque."
FUNÇÃO MAIN
def main():
estoque = {}
while True:
print("\nMenu de Opções:")
print("1 - Adicionar produto")
print("2 - Remover produto")
print("3 - Consultar produto")
print("4 - Sair")
opcao = input("Escolha uma opção: ")
if opcao == "1":
print(adicionar_produto(estoque))
elif opcao == "2":
print(remover_produto(estoque))
elif opcao == "3":
print(consultar_produto(estoque))
elif opcao == "4":
print("Saindo do programa...")
break
else:
print("Opção inválida! Tente novamente.")
if __name__ == "__main__":
main()
Caso o Python ainda não esteja instalado em seu dispositivo, clique no botão abaixo para realizar a instalação.