Etiqueta: visualeditor
 
(5 revisões intermediárias por 3 usuários não estão sendo mostradas)
Linha 1: Linha 1:
= Escopo =
= Escopo =
<br>
<ref>.</ref><br>


* Desenvolver uma aplicação que descubra onde estão localizados determinados produtos
* Desenvolver uma aplicação que descubra onde estão localizados determinados produtos
* Dificuldades:  Colocar a data de validade (e retornar)  Gravar o arquivo(facilmente resolvido com whitelines e readlines)  Funções não pedidas e desenvolvidas:  preço de venda - Custo de fábrica = Lucro  impedir que a quantidade de itens de entrada seja 0  impedir que se coloque números nos locais que devem ser strings  impedir que se coloque strings nos locais que devem ser números  Se o numero digitado não aparecer no menu ,aparecerá uma mensagem de erro.  Se o produto for alterado e sua quantidade em estoque for menor que 10, este retorna uma mensagem que se necessita reposição para o item alterado.  Maior dificuldade do trabalho: sequência lógica do algoritmo
<br>
<br>


Linha 18: Linha 20:
** Ao clicar, aparecerão todos os produtos cujo estoque esteja abaixo do limite mínimo
** Ao clicar, aparecerão todos os produtos cujo estoque esteja abaixo do limite mínimo
<br>
<br>
= Código tempo =
<syntaxhighlight lang="python3" line="1">
#O programa esta muito bom, falta apenas lidar com alguns casos de teste que nao funcionam, mas tirando isso estam de parabens.
print("--------------------------------------\n")
print("Bem vindo ao programa des estoque e localizacao")
print("Grupo: Germano, Samela, Tayna, Lara")
import datetime
variavel_escolha = 0
exibir_produto_codigo = 0
menu_principal = 0
menu_cadastrar_produto = 0
menu_controle_produto = 0
quantidade_produto_antiga = 0
quantidade_produto_entrada = 0
quantidade_produto_saida = 0
valor_venda_produto_antiga = 0
lucro_obtido_total = 0
def printar_dados():
    printar = "------------------------\n\n"
    print("\n------------------------")
    print("Cod.:", codigo_produto_lista[exibir_produto_codigo])
    print("Nome:", nome_produto_lista[exibir_produto_codigo])
    print("Quantidade:", quantidade_produto_lista[exibir_produto_codigo])
    print("Prateleira: ", prateleira_produto_lista[exibir_produto_codigo])
    print("Fileira: ", fileira_produto_lista[exibir_produto_codigo])
    print("Fabricante: ", fabricante_produto_lista[exibir_produto_codigo])
    print("Valor de custo:", valor_custo_produto_lista[exibir_produto_codigo])
    print("Valor de venda:", valor_venda_produto_lista[exibir_produto_codigo])
#  print("Data de validade:", valor_validade_produto_lista[exibir_produto_codigo]) ------------------------------- Porque nao esta usando a validade?
    return printar
def nenhum_produto_cadastrado():
    if nome_produto_lista == []:
        print_para_n_none = print ("Nenhum produto cadastrado")
    return print_para_n_none
nome_produto_lista = []
codigo_produto_lista = []
quantidade_produto_lista = []
quantidade_produto_antiga_lista = []
quantidade_produto_saida_lista = []
quantidade_produto_entrada_lista = []
prateleira_produto_lista = []
fileira_produto_lista = []
validade_produto_lista = []
fabricante_produto_lista = []
valor_custo_produto_lista = []
valor_custo_produto_antiga_lista = []
valor_venda_produto_lista = []
valor_venda_produto_antiga_lista = []
while True:
    print("------------------------")
    menu_principal = (input("1. Cadastrar produto\n2. Consultar produto\n3. Controle de estoque\n4. Controle de validade\n5.Sair\n-->"))
    print("\n------------------------")
#  #Menu de cadastro #condições para a escolha do menu do usuário #1
    if(menu_principal == "1"):
        while True:
            menu_cadastrar_produto = (input("1. Cadastrar novo produto\n2. Alterar produto\n3. Remover produto\n4. Retornar ao Menu Inicial\n-->"))
            print("\n")
#  #  #Menu para cadastrar um novo produto #1.1
            if (menu_cadastrar_produto == "1"):
                while True:
                    if (len(nome_produto_lista)) == 10000:
                        print("---------------------------------------")
                        print("Capacidade maxima de produtos excedida!")
                        print("---------------------------------------")
                        break
                    while True:
                        #Cadastrar nome do produto
                        print("-------------------------")
                        nome_produto_digitado = input("Digite o nome do produto: ")
                        #Se o usuario digitar nome vazio
                        if(nome_produto_digitado == ""):
                            print("\n--------------")
                            print("Nome invalido!")
                            print("--------------\n")
                        #Se produto ja estiver condito na lista
                        elif (nome_produto_digitado in nome_produto_lista):
                            print("\n------------------------------------")
                            print("Nome ja cadastrado, tente novamente!")
                            print("------------------------------------\n")
                        #Verificar se há somente letras
                        else:
                            for i in range(len(nome_produto_digitado)):
                                if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231 or ord(nome_produto_digitado[i]) == 32:
                                    continue
                                else:
                                    print("\n-----------------------------------------------")
                                    print("Nome do produto so pode conter letras ou hifens")
                                    print("-----------------------------------------------\n")
                                    break
                        #condicoes para avancar pra proxima etapa
                            if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231 or ord(nome_produto_digitado[i]) == 32:
                                break
                    #Adicionar nome do produto na lista
                    nome_produto_lista.append(nome_produto_digitado)
                    #Cadastrar quantidade de um produto a uma lista.
                    while True:
                        quantidade_produto_digitado = (input("Digite a quantidade do produto: "))
                        #Se o usuario digitar nome vazio
                        if(quantidade_produto_digitado == ""):
                            print("\n-------------------")
                            print("Quantidade invalida!")
                            print("-------------------\n")
                        #Verificar se ha somente numeros
                        else:
                            for i in range(len(quantidade_produto_digitado)):
                                if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                    continue
                                else:
                                    print("\n--------------------------------------------")
                                    print("Quantidade do produto so pode conter numeros")
                                    print("--------------------------------------------\n")
                                    break
                            #condicoes para avancar pra proxima etapa
                            if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                int(quantidade_produto_digitado)
                                break
                    #Adicionar quantidade a lista
                    quantidade_produto_lista.append(quantidade_produto_digitado)
                    quantidade_produto_antiga = quantidade_produto_digitado
                    quantidade_produto_antiga_lista.append(quantidade_produto_antiga)
                    #Adicionar a prateleira do produto a uma lista
                    while True:
                        prateleira_produto_digitado = (input("Digite a prateleira do produto: "))
                        if(prateleira_produto_digitado == ""):
                            print("\n----------------")
                            print("Prateleira invalida!")
                            print("----------------\n")
                        else:
                            prateleira_produto_lista.append(prateleira_produto_digitado)
                            break
                    #Adicionar a fileira do produto a uma lista
                    while True:
                        fileira_produto_digitado = (input("Digite a fileira do produto: "))
                        if(fileira_produto_digitado == ""):
                            print("\n----------------")
                            print("fileira invalida!")
                            print("----------------\n")
                        else:
                            fileira_produto_lista.append(fileira_produto_digitado)
                            break
                    while True:
                        fabricante_produto_digitado = (input("Digite o fabricante do produto: "))
                        if(fabricante_produto_digitado == ""):
                            print("\n--------------------")
                            print("Fabricante invalido!")
                            print("--------------------\n")
                        else:
                            fabricante_produto_lista.append(fabricante_produto_digitado)
                            break
                    #Adicionar o valor de custo de um produto a uma lista.
                    while True:
                        valor_custo_produto_digitado = (input("Digite o valor de custo do produto: "))
                        #Se o usuario digitar nome vazio
                        if(valor_custo_produto_digitado == ""):
                            print("\n---------------")
                            print("Valor invalido!")
                            print("---------------\n")
                        #Verificar se ha somente numeros
                        else:
                            for i in range(len(valor_custo_produto_digitado)):
                                if (ord(valor_custo_produto_digitado[i])) in range(48,58) or (ord(valor_custo_produto_digitado[i])) == 46:
                                    continue
                                else:
                                    print("\n---------------")
                                    print("valor invalido!")
                                    print("---------------\n")
                                    break
                            #condicoes para avancar pra proxima etapa
                            if (ord(valor_custo_produto_digitado[i])) in range(48,58):
                                float(valor_custo_produto_digitado)
                                break
                            if (ord(valor_custo_produto_digitado[i])) in range(46,47):
                                float(valor_custo_produto_digitado)
                                break
                    valor_custo_produto_lista.append(valor_custo_produto_digitado)
                    valor_custo_produto_antiga = valor_custo_produto_digitado
                    valor_custo_produto_antiga_lista.append(valor_custo_produto_antiga)
                    #Adicionar a data de validade
                    while True:
                   
                    #------------------------------------------------------------------------------------------------------------------
                    #leia como uma string e dps use o split para dividir, dps passe para inteiro. Seu programa não funciona se eu sem querer digitar 123/01/201. Usando o metodo acima da certo;
                        entrada = input("Data de validade do produto dd/mm/aaaa: ")
                        dia = int(entrada[0:2])
                        mes = int(entrada[3:5])
                        ano = int(entrada[6:10])
                        #Se o usuario digitar dia vazio
                     
                        if(dia == ""):
                            print("\n---------------")
                            print("Valor invalido!")
                            print("---------------\n")
                        #Se o usuario digitar nome vazio
                        if(mes == ""):
                            print("\n---------------")
                            print("Valor invalido!")
                            print("---------------\n")
                        #Se o usuario digitar nome vazio
                        if(ano == ""):
                            print("\n---------------")
                            print("Valor invalido!")
                            print("---------------\n")
                            break
                        break
                    while True:
                        valor_venda_produto_digitado = (input("Digite o valor de venda do produto: "))
                        #Se o usuario digitar nome vazio
                        if(valor_venda_produto_digitado == ""):
                            print("\n---------------")
                            print("Valor invalido!")
                            print("---------------\n")
                        #Verificar se ha somente numeros
                        else:
                            for i in range(len(valor_venda_produto_digitado)):
                                if (ord(valor_venda_produto_digitado[i])) in range(48,58) or (ord(valor_venda_produto_digitado[i])) == 46:
                                    continue
                                else:
                                    print("\n---------------")
                                    print("valor invalido!")
                                    print("---------------\n")
                                    break
                            #condicoes para avancar pra proxima etapa
                            if (ord(valor_venda_produto_digitado[i])) in range(48,58):
                                float(valor_venda_produto_digitado)
                                break
                            if (ord(valor_venda_produto_digitado[i])) in range(46,47):
                                float(valor_venda_produto_digitado)
                                break
                    valor_venda_produto_lista.append(valor_venda_produto_digitado)
                    valor_venda_produto_antiga = valor_venda_produto_digitado
                    valor_venda_produto_antiga_lista.append(valor_venda_produto_antiga)
                    #Adicionar o codigo do produto em uma lista
                    codigo_produto_lista.append((len(codigo_produto_lista)))
                    #Menssagem de exito
                    print("\n-------------------------------")
                    print("Produto cadastrado com sucesso!")
                    print("-------------------------------\n")
                    break
#  #  #Menu para alterar um produto #1.2
            elif (menu_cadastrar_produto == "2"):
                #Quando nao ha nenhum produto cadastrado
                if (nome_produto_lista == []):
                    print("\n-------------------------")
                    print("Nenhum produto cadastrado")
                    print("-------------------------\n")
                #Listar produtos cadastrados
                else:
                    while True:
                        print("Lista de produtos cadastrados")
                        for i in range(len(codigo_produto_lista)):
                            print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                        print("\n\n")
                        exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                        #Se o usuário digitar valor vazio
                        if (exibir_produto_codigo == ""):
                            print("\n-----------------------------------------")
                            print ("Valor vazio! Por favor digite novamente!")
                            print("-----------------------------------------\n")
                        #Se o que foi digitado nao estiver contido na lista
                        elif (exibir_produto_codigo not in codigo_produto_lista):
                            print("\n-----------------------------------------")
                            print ("Valor invalido ou produto nao cadastrado!")
                            print("-----------------------------------------\n")
                        #Printar dados especificos do produto
                        else:
                            print(printar_dados())
                            print("Deseja alterar os dados exibidos?")
                            variavel_escolha = (input("1. Sim\n2. Nao\n-->"))
                            while True:
#  #  #  #Condição de seguraça para alterar o produto #1.2.1
                                if (variavel_escolha == "1"):
                                    #Excluir o indice especifico do produto digitado
                                    nome_produto_lista.pop(exibir_produto_codigo)
                                    quantidade_produto_lista.pop(exibir_produto_codigo)
                                    prateleira_produto_lista.pop(exibir_produto_codigo)
                                    fileira_produto_lista.pop(exibir_produto_codigo)
                                    fabricante_produto_lista.pop(exibir_produto_codigo)
                                    valor_custo_produto_lista.pop(exibir_produto_codigo)
                                    valor_venda_produto_lista.pop(exibir_produto_codigo)
                                    codigo_produto_lista.pop(exibir_produto_codigo)
                                    #validade_produto_lista.pop(exibir_produto_codigo)
                                    #Alterar nome do produto na lista
                                    while True:
                                        #Cadastrar nome do produto
                                        print("-------------------------")
                                        nome_produto_digitado = input("Digite o nome do produto: ")
                                        #Se o usuario digitar nome vazio
                                        if(nome_produto_digitado == ""):
                                            print("\n--------------")
                                            print("Nome invalido!")
                                            print("--------------\n")
                                        #Se produto ja estiver condito na lista
                                        elif (nome_produto_digitado in nome_produto_lista):
                                            print("\n------------------------------------")
                                            print("Nome ja cadastrado, tente novamente!")
                                            print("------------------------------------\n")
                                        #Verificar se ha somente letras
                                        else:
                                            for i in range(len(nome_produto_digitado)):
                                                if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231:
                                                    continue
                                                else:
                                                    print("\n--------------------------------------------")
                                                    print("Nome do produto pode conter letras e hifens")
                                                    print("--------------------------------------------\n")
                                                    break
                                        #condicoes para avancar pra proxima etapa
                                            if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231:
                                                break
                                    #Adicionar nome do produto na lista
                                    nome_produto_lista.insert(exibir_produto_codigo,nome_produto_digitado)
                                    #Cadastrar quantidade de um produto a uma lista.
                                    while True:
                                        quantidade_produto_digitado = (input("Digite a quantidade do produto: "))
                                        #Se o usuario digitar nome vazio ou zero
                                        if(quantidade_produto_digitado == 0):
                                            print("\n-------------------")
                                            print("Quantidade invalida!")
                                            print("-------------------\n")
                                        if(quantidade_produto_digitado == ""):
                                            print("\n-------------------")
                                            print("Quantidade invalida!")
                                            print("-------------------\n")
                                        #Verificar se ha somente numeros
                                        else:
                                            for i in range(len(quantidade_produto_digitado)):
                                                if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                                    continue
                                                else:
                                                    print("\n--------------------------------------------")
                                                    print("Quantidade do produto so pode conter numeros")
                                                    print("--------------------------------------------\n")
                                                    break
                                            #condicao para avançar pra proxima etapa
                                            if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                                int(quantidade_produto_digitado)
                                                break
                                    #Adicionar quantidade a lista
                                    quantidade_produto_lista.insert(exibir_produto_codigo,quantidade_produto_digitado)
                                    quantidade_produto_antiga = quantidade_produto_digitado
                                    quantidade_produto_antiga_lista.insert(exibir_produto_codigo,quantidade_produto_antiga)
                                    #Adicionar a prateleira do produto a uma lista
                                    prateleira_produto_digitado = (input("Digite a prateleira do produto: "))
                                    prateleira_produto_lista.insert(exibir_produto_codigo,prateleira_produto_digitado)
                                    #Adicionar a fileira do produto a uma lista
                                    fileira_produto_digitado = (input("Digite a fileira do produto: "))
                                    fileira_produto_lista.insert(exibir_produto_codigo,fileira_produto_digitado)
                                    #Adicionar o fabricante do produto a uma lista
                                    fabricante_produto_digitado = (input("Digite o fabricante do produto: "))
                                    fabricante_produto_lista.insert(exibir_produto_codigo,fabricante_produto_digitado)
                                    #Adicionar o valor de custo de um produto a uma lista.
                                    while True:
                                        valor_custo_produto_digitado = (input("Digite o valor de custo do produto: "))
                                        #Se o usuario digitar nome vazio
                                        if(valor_custo_produto_digitado == ""):
                                            print("\n---------------")
                                            print("Valor invalido!")
                                            print("---------------\n")
                                        if(valor_custo_produto_digitado == 0):
                                            print("\n---------------")
                                            print("Valor invalido!")
                                            print("---------------\n")
                                        #Verificar se ha somente numeros
                                        else:
                                            for i in range(len(valor_custo_produto_digitado)):
                                                if (ord(valor_custo_produto_digitado[i])) in range(48,58) or (ord(valor_custo_produto_digitado[i])) == 46:
                                                    continue
                                                else:
                                                    print("\n---------------")
                                                    print("valor invalido!")
                                                    print("---------------\n")
                                                    break
                                            #condicoes para avancar pra proxima etapa
                                            if (ord(valor_custo_produto_digitado[i])) in range(48,58):
                                                float(valor_custo_produto_digitado)
                                                break
                                            if (ord(valor_custo_produto_digitado[i])) in range(46,47):
                                                float(valor_custo_produto_digitado)
                                                break
                                    valor_custo_produto_lista.insert(exibir_produto_codigo,valor_custo_produto_digitado)
                                    valor_custo_produto_antiga = valor_custo_produto_digitado
                                    valor_custo_produto_antiga_lista.insert(exibir_produto_codigo,valor_custo_produto_antiga)
                                    #Adicionar o valor de venda de um produto a uma lista.
                                    while True:
                                        valor_venda_produto_digitado = (input("Digite o valor de venda do produto: "))
                                        #Se o usuario digitar nome vazio
                                        if(valor_venda_produto_digitado == ""):
                                            print("\n---------------")
                                            print("Valor invalido!")
                                            print("---------------\n")
                                        #Verificar se ha somente numeros
                                        else:
                                            for i in range(len(valor_venda_produto_digitado)):
                                                if (ord(valor_venda_produto_digitado[i])) in range(48,58) or (ord(valor_venda_produto_digitado[i])) == 46:
                                                    continue
                                                else:
                                                    print("\n---------------")
                                                    print("valor invalido!")
                                                    print("---------------\n")
                                                    break
                                            #condicoes para avancar pra proxima etapa
                                            if (ord(valor_venda_produto_digitado[i])) in range(48,58):
                                                float(valor_venda_produto_digitado)
                                                break
                                            if (ord(valor_venda_produto_digitado[i])) in range(46,47):
                                                float(valor_venda_produto_digitado)
                                                break
                                    valor_venda_produto_lista.insert(exibir_produto_codigo,valor_venda_produto_digitado)
                                    valor_venda_produto_antiga = valor_venda_produto_digitado
                                    valor_venda_produto_antiga_lista.insert(exibir_produto_codigo, valor_venda_produto_antiga)
                                    entrada = input("Data de validade do produto dd/mm/aaaa: ")
                                    dia = int(entrada[0:2])
                                    mes = int(entrada[3:5])
                                    ano = int(entrada[6:10])
                        #Se o usuario digitar nome vazio
                                    if(dia == ""):
                                        print("\n---------------")
                                        print("Valor invalido!")
                                        print("---------------\n")
                        #Se o usuario digitar nome vazio
                                    if(mes == ""):
                                        print("\n---------------")
                                        print("Valor invalido!")
                                        print("---------------\n")
                        #Se o usuario digitar nome vazio
                                    if(ano == ""):
                                        print("\n---------------")
                                        print("Valor invalido!")
                                        print("---------------\n")
                                        break
                                    break
                                    #Adicionar o codigo do produto em uma lista
                                    codigo_produto_lista.insert(exibir_produto_codigo,exibir_produto_codigo)
                                    #Menssagem de exito
                                    print("\n-------------------------------")
                                    print("Produto alterado com sucesso!")
                                    print("-------------------------------\n")
                                    break
                                break
                            break
#  #  #Remover produto cadastrado  #1.3
            elif (menu_cadastrar_produto == "3"):
                #Quando nao ha nenhum produto cadastrado
                if (nome_produto_lista == []):
                    print("\n-------------------------")
                    print("Nenhum produto cadastrado")
                    print("-------------------------\n")
                #Listar produtos cadastrados
                else:
                    while True:
                        #For que printar os produtos
                        print("Lista de produtos cadastrados")
                        for i in range(len(codigo_produto_lista)):
                            print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                        print("\n\n")
                        exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                        #Valor não contido dentro da lista de codigos
                        if exibir_produto_codigo not in codigo_produto_lista:
                            print("\n-----------------------------------------")
                            print("Valor invalido ou produto nao cadastrado")
                            print("-----------------------------------------\n")
                        else:
                            #Printar dados especificos do produto
                            print(printar_dados())
                            print("Deseja excluir os dados exibidos?")
                            variavel_escolha = (input("1. Sim\n2. Nao\n-->"))
                            #Condicoes de seguranca para excluir o produto #1.3.1
                            if(variavel_escolha == "1"):
                                #Excluir o indice especifico do produto digitado
                                nome_produto_lista.pop(exibir_produto_codigo)
                                quantidade_produto_lista.pop(exibir_produto_codigo)
                                prateleira_produto_lista.pop(exibir_produto_codigo)
                                fileira_produto_lista.pop(exibir_produto_codigo)
                                fabricante_produto_lista.pop(exibir_produto_codigo)
                                valor_custo_produto_lista.pop(exibir_produto_codigo)
                                valor_venda_produto_lista.pop(exibir_produto_codigo)
                                codigo_produto_lista.pop(exibir_produto_codigo)
                                #validade_produto_lista.pop(exibir_produto_codigo)
                                #Menssagem de exito
                                print("\n-----------------------------")
                                print("Produto excluido com sucesso!")
                                print("-----------------------------\n")
                                break
                            #nao excluir o produto
                            elif(variavel_escolha == "2"):
                                print("-----------------------------\n")
                                break
                            #Se o usuario digitar valor vazio
                            elif(variavel_escolha == ""):
                                print("\n-----------------------------------------")
                                print ("Valor invalido ou produto não cadastrado")
                                print("-----------------------------------------\n")
                            #Se o usuario digitar caracter invalidos
                            else:
                                print("\n-----------------------------------------")
                                print ("Valor invalido ou produto não cadastrado")
                                print("-----------------------------------------\n")
                    break
#  #  #Retornar ao menu principal #1.4
            elif (menu_cadastrar_produto == "4"):
                menu_cadastrar_produto = 0
                break
#  #  #Condicoes caso o usuario digite um numero errado
            else:
                print("\n------------------------")
                print("O numero ou caracter digitado e invalido.")
                print("Por favor, tente novamente.")
                print("------------------------\n")
#  #Consultar um produto #2
    elif(menu_principal == "2"):
        while True:
            if (nome_produto_lista == []):
                print("\n-------------------------")
                print("Nenhum produto cadastrado")
                print("-------------------------\n")
            else:
                while True:
                    print("Lista de produtos cadastrados")
                    for i in range(len(codigo_produto_lista)):
                        print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                    print("\n\n")
                    exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                    if (exibir_produto_codigo not in codigo_produto_lista):
                        print("\n-----------------------------------------")
                        print("Valor invalido ou produto nao cadastrado")
                        print("-----------------------------------------\n")
                    else:
                        print(printar_dados())
                    break
            break
#  #Controlar estoque #3
    elif(menu_principal == "3"):
        while True:
            print("--------------------------------")
            menu_controle_produto = input("1. Registrar entrada de produtos\n2. Registrar saida de produtos\n3. Saldo de estoque unitario\n4. Analise total de estoque\n5. Voltar ao menu principal\n-->")
#  #  #  #Registrar entrada de produtos #3.1
            if (menu_controle_produto == "1"):
                if (nome_produto_lista == []):
                    print("\n-------------------------")
                    print("Nenhum produto cadastrado")
                    print("-------------------------\n")
                #Listar produtos cadastrados
                else:
                    while True:
                        #For que printar os produtos
                        print("Lista de produtos cadastrados")
                        for i in range(len(codigo_produto_lista)):
                            print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                        print("\n\n")
                        exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                        #Valor não contido dentro da lista de codigos
                        if exibir_produto_codigo not in codigo_produto_lista:
                            print("\n-----------------------------------------")
                            print("Valor invalido ou produto nao cadastrado")
                            print("-----------------------------------------\n")
                        else:
                            #Printar dados especificos do produto
                            print(printar_dados())
                            print("Deseja alterar a quantidade de produto exibido?")
                            variavel_escolha = (input("1. Sim\n2. Nao\n-->"))
                            #Condicao de seguraca para excluir o produto
                            if(variavel_escolha == "1"):
                                #Alterar oa quantia do produto digitado
                                quantidade_adicionada = int(input("Digite a quantidade que deseja registrar: "))
                                quantidade_nova = int(quantidade_produto_lista[exibir_produto_codigo]) + quantidade_adicionada
                                quantidade_produto_lista.pop(exibir_produto_codigo)
                                quantidade_produto_lista.insert(exibir_produto_codigo, quantidade_nova)
                                quantidade_produto_entrada += quantidade_adicionada
                                quantidade_produto_entrada_lista.insert(exibir_produto_codigo, quantidade_produto_entrada)
                                #Menssagem de exito
                                print("\n----------------------------------")
                                print("Quantidade registrada com sucesso!")
                                print("----------------------------------\n")
                                break
                            #Nao excluir o produto
                            elif(variavel_escolha == "2"):
                                print("-----------------------------\n")
                                break
                            #Se o usuario digitar valor vazio
                            elif(variavel_escolha == ""):
                                print("\n-----------------------------------------")
                                print("Valor invalido ou produto nao cadastrado")
                                print("-----------------------------------------\n")
                            #Se o usuario digitar caracter invalidos
                            else:
                                print("\n-----------------------------------------")
                                print ("Valor invalido ou produto nao cadastrado")
                                print("-----------------------------------------\n")
                    break
#  #  #  #Registrar saida de produtos #3.2
            elif (menu_controle_produto == "2"):
                if (nome_produto_lista == []):
                    print("\n-------------------------")
                    print("Nenhum produto cadastrado")
                    print("-------------------------\n")
                #Listar produtos cadastrados
                else:
                    while True:
                        #For que printar os produtos
                        print("Lista de produtos cadastrados")
                        for i in range(len(codigo_produto_lista)):
                            print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                        print("\n\n")
                        exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                        #Valor nao contido dentro da lista de codigos
                        if exibir_produto_codigo not in codigo_produto_lista:
                            print("\n-----------------------------------------")
                            print("Valor invalido ou produto nao cadastrado")
                            print("-----------------------------------------\n")
                        else:
                            #Printar dados especificos do produto
                            print(printar_dados())
                            print("Deseja alterar a quantidade de produto exibido?")
                            variavel_escolha = (input("1. Sim\n2. Nao\n-->"))
                            #Condicao de seguranca para excluir o produto
                            if(variavel_escolha == "1"):
                                #Alterar a quantia do produto digitado
                                #Se a saida for maior que a quantidade atual seu programa não faz nada;-------------------------------------
                                print("\n---------------------------------------")
                                quantidade_removida = int(input("Digite a quantidade que deseja remover: "))
                                quantidade_nova = int(quantidade_produto_lista[exibir_produto_codigo]) - quantidade_removida
                                if quantidade_nova <= 10:
                                    print("O produto precisa ser reposto")
                                quantidade_produto_lista.pop(exibir_produto_codigo)
                                quantidade_produto_lista.insert(exibir_produto_codigo, quantidade_nova)
                                quantidade_produto_saida += quantidade_removida
                                quantidade_produto_saida_lista.insert(exibir_produto_codigo, quantidade_produto_saida)
                                #Menssagem de exito
                                if(variavel_escolha == "1"):
                                    print("\n---------------------------------------")
                                    print("Baixa de produto concluida com sucesso!")
                                    print("---------------------------------------\n")
                                    break
                            #nao excluir o produto
                            elif(variavel_escolha == "2"):
                                print("-----------------------------\n")
                                break
                            #Se o usuario digitar valor vazio
                            elif(variavel_escolha == ""):
                                print("\n-----------------------------------------")
                                print("Valor invalido ou produto nao cadastrado")
                                print("-----------------------------------------\n")
                            #Se o usuario digitar caracter invalidos
                            else:
                                print("\n-----------------------------------------")
                                print ("Valor invalido ou produto nao cadastrado")
                                print("-----------------------------------------\n")
                    break
#  #  #  #Saldo de estoque unitario #3.3
            elif (menu_controle_produto == "3"):
                if (nome_produto_lista == []):
                    print("\n-------------------------")
                    print("Nenhum produto cadastrado")
                    print("-------------------------\n")
                #Listar produtos cadastrados
                else:
                    while True:
                        #For que printar os produtos
                        print("Lista de produtos cadastrados")
                        for i in range(len(codigo_produto_lista)):
                            print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                        print("\n\n")
                        exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                        #Valor nao contido dentro da lista de codigos
                        if exibir_produto_codigo not in codigo_produto_lista:
                            print("\n-----------------------------------------")
                            print("Valor invalido ou produto nao cadastrado")
                            print("-----------------------------------------\n")
                        else:
                            #Printar dados especificos do produto
                            print("\n------------------------")
                            print("Codd.:", codigo_produto_lista[exibir_produto_codigo])
                            print("Nome:", nome_produto_lista[exibir_produto_codigo])
                            print("Quantidade inicial: ", quantidade_produto_antiga_lista[exibir_produto_codigo])
                            print("Quantidade atual: ", quantidade_produto_lista[exibir_produto_codigo])
                            print("Data de emissao" ,)#nenhuma informação-------------------------------------------------------------------
                            print("Data de ")#nenhum informaçao-----------------------------------------------------------------------------
                            print("------------------------\n")
                            break
#  #  #  #Análise total de estoque #3.4
            elif (menu_controle_produto == "4"):
                if (nome_produto_lista == []):
                    print("\n-------------------------")
                    print("Nenhum produto cadastrado")
                    print("-------------------------\n")
                else:
                    #For que printar os produtos
                    print("\n-------------------------------------")
                    print("Lista de produtos cadastrados")
                    for i in range(len(codigo_produto_lista)):
                        print(codigo_produto_lista[i]," --- ",nome_produto_lista[i], " --- Quant. disponivel: ",quantidade_produto_lista[i])
                    print("-------------------------------------\n")
#  #  #  #Retornar ao menu principal #3.6
            elif(menu_controle_produto == "5"):
                break
            #Condicao caso o usuario digite um numero errado
            else:
                print("\n-----------------------------------------")
                print("O numero ou caracter digitado e invalido.")
                print("Por favor, tente novamente.")
                print("-----------------------------------------\n")
    elif(menu_principal == "4"):#não faz nada----------------------------------------------------------------------------------------------
        print("Validade")
        break
#  #condicaoo do while, se o menu for diferente de 4 ele continua, caso contrario ele encerra e manda uma mensagem
    elif(menu_principal == "5"):
        print("Obrigado por usar nosso programa!")
        break
# #Condicao caso o usuario digite um numero errado
    else:
        print("\n-----------------------------------------")
        print("O numero ou caracter digitado e invalido.")
        print("Por favor, tente novamente.")
        print("-----------------------------------------\n")
</syntaxhighlight>

Edição atual tal como às 18h24min de 17 de julho de 2017

Escopo

<ref>.</ref>

  • Desenvolver uma aplicação que descubra onde estão localizados determinados produtos
  • Dificuldades: Colocar a data de validade (e retornar) Gravar o arquivo(facilmente resolvido com whitelines e readlines) Funções não pedidas e desenvolvidas: preço de venda - Custo de fábrica = Lucro impedir que a quantidade de itens de entrada seja 0 impedir que se coloque números nos locais que devem ser strings impedir que se coloque strings nos locais que devem ser números Se o numero digitado não aparecer no menu ,aparecerá uma mensagem de erro. Se o produto for alterado e sua quantidade em estoque for menor que 10, este retorna uma mensagem que se necessita reposição para o item alterado. Maior dificuldade do trabalho: sequência lógica do algoritmo


Funcionalidades

<br

  • Cadastrar produtos
  • Alterar produtos
  • Excluir produtos
  • Informar estoque do produto
  • Localizar produto
  • Totalizar cesta de produtos
  • Nova funcionalidade:
    • Criar botão: Produtos para reposição
    • Ao clicar, aparecerão todos os produtos cujo estoque esteja abaixo do limite mínimo


Código tempo

<syntaxhighlight lang="python3" line="1">

  1. O programa esta muito bom, falta apenas lidar com alguns casos de teste que nao funcionam, mas tirando isso estam de parabens.

print("--------------------------------------\n") print("Bem vindo ao programa des estoque e localizacao") print("Grupo: Germano, Samela, Tayna, Lara") import datetime variavel_escolha = 0 exibir_produto_codigo = 0 menu_principal = 0 menu_cadastrar_produto = 0 menu_controle_produto = 0 quantidade_produto_antiga = 0 quantidade_produto_entrada = 0 quantidade_produto_saida = 0 valor_venda_produto_antiga = 0 lucro_obtido_total = 0

def printar_dados():

   printar = "------------------------\n\n"
   print("\n------------------------")
   print("Cod.:", codigo_produto_lista[exibir_produto_codigo])
   print("Nome:", nome_produto_lista[exibir_produto_codigo])
   print("Quantidade:", quantidade_produto_lista[exibir_produto_codigo])
   print("Prateleira: ", prateleira_produto_lista[exibir_produto_codigo])
   print("Fileira: ", fileira_produto_lista[exibir_produto_codigo])
   print("Fabricante: ", fabricante_produto_lista[exibir_produto_codigo])
   print("Valor de custo:", valor_custo_produto_lista[exibir_produto_codigo])
   print("Valor de venda:", valor_venda_produto_lista[exibir_produto_codigo])
  1. print("Data de validade:", valor_validade_produto_lista[exibir_produto_codigo]) ------------------------------- Porque nao esta usando a validade?
   return printar

def nenhum_produto_cadastrado():

   if nome_produto_lista == []:
       print_para_n_none = print ("Nenhum produto cadastrado")
   return print_para_n_none

nome_produto_lista = []

codigo_produto_lista = []

quantidade_produto_lista = [] quantidade_produto_antiga_lista = [] quantidade_produto_saida_lista = [] quantidade_produto_entrada_lista = []

prateleira_produto_lista = [] fileira_produto_lista = [] validade_produto_lista = []

fabricante_produto_lista = []

valor_custo_produto_lista = [] valor_custo_produto_antiga_lista = []

valor_venda_produto_lista = [] valor_venda_produto_antiga_lista = []

while True:

   print("------------------------")
   menu_principal = (input("1. Cadastrar produto\n2. Consultar produto\n3. Controle de estoque\n4. Controle de validade\n5.Sair\n-->"))
   print("\n------------------------")


  1. #Menu de cadastro #condições para a escolha do menu do usuário #1
   if(menu_principal == "1"):
       while True:
           menu_cadastrar_produto = (input("1. Cadastrar novo produto\n2. Alterar produto\n3. Remover produto\n4. Retornar ao Menu Inicial\n-->"))
           print("\n")


  1. # #Menu para cadastrar um novo produto #1.1
           if (menu_cadastrar_produto == "1"):
               while True:
                   if (len(nome_produto_lista)) == 10000:
                       print("---------------------------------------")
                       print("Capacidade maxima de produtos excedida!")
                       print("---------------------------------------")
                       break
                   while True:
                       #Cadastrar nome do produto
                       print("-------------------------")
                       nome_produto_digitado = input("Digite o nome do produto: ")
                       #Se o usuario digitar nome vazio
                       if(nome_produto_digitado == ""):
                           print("\n--------------")
                           print("Nome invalido!")
                           print("--------------\n")
                       #Se produto ja estiver condito na lista
                       elif (nome_produto_digitado in nome_produto_lista):
                           print("\n------------------------------------")
                           print("Nome ja cadastrado, tente novamente!")
                           print("------------------------------------\n")
                       #Verificar se há somente letras
                       else:
                           for i in range(len(nome_produto_digitado)):
                               if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231 or ord(nome_produto_digitado[i]) == 32:
                                   continue
                               else:
                                   print("\n-----------------------------------------------")
                                   print("Nome do produto so pode conter letras ou hifens")
                                   print("-----------------------------------------------\n")
                                   break
                       #condicoes para avancar pra proxima etapa
                           if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231 or ord(nome_produto_digitado[i]) == 32:
                               break


                   #Adicionar nome do produto na lista
                   nome_produto_lista.append(nome_produto_digitado)


                   #Cadastrar quantidade de um produto a uma lista.
                   while True:
                       quantidade_produto_digitado = (input("Digite a quantidade do produto: "))
                       #Se o usuario digitar nome vazio
                       if(quantidade_produto_digitado == ""):
                           print("\n-------------------")
                           print("Quantidade invalida!")
                           print("-------------------\n")


                       #Verificar se ha somente numeros
                       else:
                           for i in range(len(quantidade_produto_digitado)):
                               if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                   continue
                               else:
                                   print("\n--------------------------------------------")
                                   print("Quantidade do produto so pode conter numeros")
                                   print("--------------------------------------------\n")
                                   break


                           #condicoes para avancar pra proxima etapa
                           if (ord(quantidade_produto_digitado[i])) in range(48,58):
                               int(quantidade_produto_digitado)
                               break
                   #Adicionar quantidade a lista
                   quantidade_produto_lista.append(quantidade_produto_digitado)
                   quantidade_produto_antiga = quantidade_produto_digitado
                   quantidade_produto_antiga_lista.append(quantidade_produto_antiga)


                   #Adicionar a prateleira do produto a uma lista
                   while True:
                       prateleira_produto_digitado = (input("Digite a prateleira do produto: "))
                       if(prateleira_produto_digitado == ""):
                           print("\n----------------")
                           print("Prateleira invalida!")
                           print("----------------\n")
                       else:
                           prateleira_produto_lista.append(prateleira_produto_digitado)
                           break
                   #Adicionar a fileira do produto a uma lista
                   while True:
                       fileira_produto_digitado = (input("Digite a fileira do produto: "))
                       if(fileira_produto_digitado == ""):
                           print("\n----------------")
                           print("fileira invalida!")
                           print("----------------\n")
                       else:
                           fileira_produto_lista.append(fileira_produto_digitado)
                           break


                   while True:
                       fabricante_produto_digitado = (input("Digite o fabricante do produto: "))
                       if(fabricante_produto_digitado == ""):
                           print("\n--------------------")
                           print("Fabricante invalido!")
                           print("--------------------\n")
                       else:
                           fabricante_produto_lista.append(fabricante_produto_digitado)
                           break


                   #Adicionar o valor de custo de um produto a uma lista.
                   while True:
                       valor_custo_produto_digitado = (input("Digite o valor de custo do produto: "))
                       #Se o usuario digitar nome vazio
                       if(valor_custo_produto_digitado == ""):
                           print("\n---------------")
                           print("Valor invalido!")
                           print("---------------\n")


                       #Verificar se ha somente numeros
                       else:
                           for i in range(len(valor_custo_produto_digitado)):
                               if (ord(valor_custo_produto_digitado[i])) in range(48,58) or (ord(valor_custo_produto_digitado[i])) == 46:
                                   continue
                               else:
                                   print("\n---------------")
                                   print("valor invalido!")
                                   print("---------------\n")
                                   break


                           #condicoes para avancar pra proxima etapa
                           if (ord(valor_custo_produto_digitado[i])) in range(48,58):
                               float(valor_custo_produto_digitado)
                               break
                           if (ord(valor_custo_produto_digitado[i])) in range(46,47):
                               float(valor_custo_produto_digitado)
                               break


                   valor_custo_produto_lista.append(valor_custo_produto_digitado)
                   valor_custo_produto_antiga = valor_custo_produto_digitado
                   valor_custo_produto_antiga_lista.append(valor_custo_produto_antiga)


                   #Adicionar a data de validade
                   while True:
                   
                   	#------------------------------------------------------------------------------------------------------------------
                   	#leia como uma string e dps use o split para dividir, dps passe para inteiro. Seu programa não funciona se eu sem querer digitar 123/01/201. Usando o metodo acima da certo;
                       entrada = input("Data de validade do produto dd/mm/aaaa: ")
                       dia = int(entrada[0:2])
                       mes = int(entrada[3:5])
                       ano = int(entrada[6:10])
                       #Se o usuario digitar dia vazio
                      
                       if(dia == ""):
                           print("\n---------------")
                           print("Valor invalido!")
                           print("---------------\n")
                       #Se o usuario digitar nome vazio
                       if(mes == ""):
                           print("\n---------------")
                           print("Valor invalido!")
                           print("---------------\n")
                       #Se o usuario digitar nome vazio
                       if(ano == ""):
                           print("\n---------------")
                           print("Valor invalido!")
                           print("---------------\n")
                           break
                       break
                   while True:
                       valor_venda_produto_digitado = (input("Digite o valor de venda do produto: "))
                       #Se o usuario digitar nome vazio
                       if(valor_venda_produto_digitado == ""):
                           print("\n---------------")
                           print("Valor invalido!")
                           print("---------------\n")


                       #Verificar se ha somente numeros
                       else:
                           for i in range(len(valor_venda_produto_digitado)):
                               if (ord(valor_venda_produto_digitado[i])) in range(48,58) or (ord(valor_venda_produto_digitado[i])) == 46:
                                   continue
                               else:
                                   print("\n---------------")
                                   print("valor invalido!")
                                   print("---------------\n")
                                   break




                           #condicoes para avancar pra proxima etapa
                           if (ord(valor_venda_produto_digitado[i])) in range(48,58):
                               float(valor_venda_produto_digitado)
                               break
                           if (ord(valor_venda_produto_digitado[i])) in range(46,47):
                               float(valor_venda_produto_digitado)
                               break
                   valor_venda_produto_lista.append(valor_venda_produto_digitado)
                   valor_venda_produto_antiga = valor_venda_produto_digitado
                   valor_venda_produto_antiga_lista.append(valor_venda_produto_antiga)


                   #Adicionar o codigo do produto em uma lista
                   codigo_produto_lista.append((len(codigo_produto_lista)))


                   #Menssagem de exito
                   print("\n-------------------------------")
                   print("Produto cadastrado com sucesso!")
                   print("-------------------------------\n")
                   break
  1. # #Menu para alterar um produto #1.2
           elif (menu_cadastrar_produto == "2"):
               #Quando nao ha nenhum produto cadastrado
               if (nome_produto_lista == []):
                   print("\n-------------------------")
                   print("Nenhum produto cadastrado")
                   print("-------------------------\n")


               #Listar produtos cadastrados
               else:
                   while True:
                       print("Lista de produtos cadastrados")
                       for i in range(len(codigo_produto_lista)):
                           print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                       print("\n\n")


                       exibir_produto_codigo = int(input("Digite o codigo do produto: "))


                       #Se o usuário digitar valor vazio
                       if (exibir_produto_codigo == ""):
                           print("\n-----------------------------------------")
                           print ("Valor vazio! Por favor digite novamente!")
                           print("-----------------------------------------\n")


                       #Se o que foi digitado nao estiver contido na lista
                       elif (exibir_produto_codigo not in codigo_produto_lista):
                           print("\n-----------------------------------------")
                           print ("Valor invalido ou produto nao cadastrado!")
                           print("-----------------------------------------\n")
                       #Printar dados especificos do produto
                       else:
                           print(printar_dados())
                           print("Deseja alterar os dados exibidos?")
                           variavel_escolha = (input("1. Sim\n2. Nao\n-->"))
                           while True:
  1. # # #Condição de seguraça para alterar o produto #1.2.1
                               if (variavel_escolha == "1"):
                                   #Excluir o indice especifico do produto digitado
                                   nome_produto_lista.pop(exibir_produto_codigo)
                                   quantidade_produto_lista.pop(exibir_produto_codigo)
                                   prateleira_produto_lista.pop(exibir_produto_codigo)
                                   fileira_produto_lista.pop(exibir_produto_codigo)
                                   fabricante_produto_lista.pop(exibir_produto_codigo)
                                   valor_custo_produto_lista.pop(exibir_produto_codigo)
                                   valor_venda_produto_lista.pop(exibir_produto_codigo)
                                   codigo_produto_lista.pop(exibir_produto_codigo)
                                   #validade_produto_lista.pop(exibir_produto_codigo)
                                   #Alterar nome do produto na lista
                                   while True:
                                       #Cadastrar nome do produto
                                       print("-------------------------")
                                       nome_produto_digitado = input("Digite o nome do produto: ")
                                       #Se o usuario digitar nome vazio
                                       if(nome_produto_digitado == ""):
                                           print("\n--------------")
                                           print("Nome invalido!")
                                           print("--------------\n")
                                       #Se produto ja estiver condito na lista
                                       elif (nome_produto_digitado in nome_produto_lista):
                                           print("\n------------------------------------")
                                           print("Nome ja cadastrado, tente novamente!")
                                           print("------------------------------------\n")
                                       #Verificar se ha somente letras
                                       else:
                                           for i in range(len(nome_produto_digitado)):
                                               if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231:
                                                   continue
                                               else:
                                                   print("\n--------------------------------------------")
                                                   print("Nome do produto pode conter letras e hifens")
                                                   print("--------------------------------------------\n")
                                                   break
                                       #condicoes para avancar pra proxima etapa
                                           if (ord(nome_produto_digitado[i])) in range(65,91) or (ord(nome_produto_digitado[i])) in range(97,123) or ord(nome_produto_digitado[i]) == 45 or ord(nome_produto_digitado[i]) == 231:
                                               break


                                   #Adicionar nome do produto na lista
                                   nome_produto_lista.insert(exibir_produto_codigo,nome_produto_digitado)


                                   #Cadastrar quantidade de um produto a uma lista.
                                   while True:
                                       quantidade_produto_digitado = (input("Digite a quantidade do produto: "))
                                       #Se o usuario digitar nome vazio ou zero
                                       if(quantidade_produto_digitado == 0):
                                           print("\n-------------------")
                                           print("Quantidade invalida!")
                                           print("-------------------\n")
                                       if(quantidade_produto_digitado == ""):
                                           print("\n-------------------")
                                           print("Quantidade invalida!")
                                           print("-------------------\n")


                                       #Verificar se ha somente numeros
                                       else:
                                           for i in range(len(quantidade_produto_digitado)):
                                               if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                                   continue
                                               else:
                                                   print("\n--------------------------------------------")
                                                   print("Quantidade do produto so pode conter numeros")
                                                   print("--------------------------------------------\n")
                                                   break


                                           #condicao para avançar pra proxima etapa
                                           if (ord(quantidade_produto_digitado[i])) in range(48,58):
                                               int(quantidade_produto_digitado)
                                               break
                                   #Adicionar quantidade a lista
                                   quantidade_produto_lista.insert(exibir_produto_codigo,quantidade_produto_digitado)
                                   quantidade_produto_antiga = quantidade_produto_digitado
                                   quantidade_produto_antiga_lista.insert(exibir_produto_codigo,quantidade_produto_antiga)


                                   #Adicionar a prateleira do produto a uma lista
                                   prateleira_produto_digitado = (input("Digite a prateleira do produto: "))
                                   prateleira_produto_lista.insert(exibir_produto_codigo,prateleira_produto_digitado)


                                   #Adicionar a fileira do produto a uma lista
                                   fileira_produto_digitado = (input("Digite a fileira do produto: "))
                                   fileira_produto_lista.insert(exibir_produto_codigo,fileira_produto_digitado)
                                   #Adicionar o fabricante do produto a uma lista
                                   fabricante_produto_digitado = (input("Digite o fabricante do produto: "))
                                   fabricante_produto_lista.insert(exibir_produto_codigo,fabricante_produto_digitado)



                                   #Adicionar o valor de custo de um produto a uma lista.
                                   while True:
                                       valor_custo_produto_digitado = (input("Digite o valor de custo do produto: "))
                                       #Se o usuario digitar nome vazio
                                       if(valor_custo_produto_digitado == ""):
                                           print("\n---------------")
                                           print("Valor invalido!")
                                           print("---------------\n")
                                       if(valor_custo_produto_digitado == 0):
                                           print("\n---------------")
                                           print("Valor invalido!")
                                           print("---------------\n")




                                       #Verificar se ha somente numeros
                                       else:
                                           for i in range(len(valor_custo_produto_digitado)):
                                               if (ord(valor_custo_produto_digitado[i])) in range(48,58) or (ord(valor_custo_produto_digitado[i])) == 46:
                                                   continue
                                               else:
                                                   print("\n---------------")
                                                   print("valor invalido!")
                                                   print("---------------\n")
                                                   break


                                           #condicoes para avancar pra proxima etapa
                                           if (ord(valor_custo_produto_digitado[i])) in range(48,58):
                                               float(valor_custo_produto_digitado)
                                               break
                                           if (ord(valor_custo_produto_digitado[i])) in range(46,47):
                                               float(valor_custo_produto_digitado)
                                               break


                                   valor_custo_produto_lista.insert(exibir_produto_codigo,valor_custo_produto_digitado)
                                   valor_custo_produto_antiga = valor_custo_produto_digitado
                                   valor_custo_produto_antiga_lista.insert(exibir_produto_codigo,valor_custo_produto_antiga)


                                   #Adicionar o valor de venda de um produto a uma lista.
                                   while True:
                                       valor_venda_produto_digitado = (input("Digite o valor de venda do produto: "))
                                       #Se o usuario digitar nome vazio
                                       if(valor_venda_produto_digitado == ""):
                                           print("\n---------------")
                                           print("Valor invalido!")
                                           print("---------------\n")


                                       #Verificar se ha somente numeros
                                       else:
                                           for i in range(len(valor_venda_produto_digitado)):
                                               if (ord(valor_venda_produto_digitado[i])) in range(48,58) or (ord(valor_venda_produto_digitado[i])) == 46:
                                                   continue
                                               else:
                                                   print("\n---------------")
                                                   print("valor invalido!")
                                                   print("---------------\n")
                                                   break


                                           #condicoes para avancar pra proxima etapa
                                           if (ord(valor_venda_produto_digitado[i])) in range(48,58):
                                               float(valor_venda_produto_digitado)
                                               break
                                           if (ord(valor_venda_produto_digitado[i])) in range(46,47):
                                               float(valor_venda_produto_digitado)
                                               break
                                   valor_venda_produto_lista.insert(exibir_produto_codigo,valor_venda_produto_digitado)
                                   valor_venda_produto_antiga = valor_venda_produto_digitado
                                   valor_venda_produto_antiga_lista.insert(exibir_produto_codigo, valor_venda_produto_antiga)
                                   entrada = input("Data de validade do produto dd/mm/aaaa: ")
                                   dia = int(entrada[0:2])
                                   mes = int(entrada[3:5])
                                   ano = int(entrada[6:10])
                       #Se o usuario digitar nome vazio
                                   if(dia == ""):
                                       print("\n---------------")
                                       print("Valor invalido!")
                                       print("---------------\n")
                       #Se o usuario digitar nome vazio
                                   if(mes == ""):
                                        print("\n---------------")
                                        print("Valor invalido!")
                                        print("---------------\n")
                       #Se o usuario digitar nome vazio
                                   if(ano == ""):
                                        print("\n---------------")
                                        print("Valor invalido!")
                                        print("---------------\n")
                                        break
                                   break


                                   #Adicionar o codigo do produto em uma lista
                                   codigo_produto_lista.insert(exibir_produto_codigo,exibir_produto_codigo)


                                   #Menssagem de exito
                                   print("\n-------------------------------")
                                   print("Produto alterado com sucesso!")
                                   print("-------------------------------\n")
                                   break
                               break
                           break


  1. # #Remover produto cadastrado #1.3
           elif (menu_cadastrar_produto == "3"):
               #Quando nao ha nenhum produto cadastrado
               if (nome_produto_lista == []):
                   print("\n-------------------------")
                   print("Nenhum produto cadastrado")
                   print("-------------------------\n")
               #Listar produtos cadastrados
               else:
                   while True:
                       #For que printar os produtos
                       print("Lista de produtos cadastrados")
                       for i in range(len(codigo_produto_lista)):
                           print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                       print("\n\n")
                       exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                       #Valor não contido dentro da lista de codigos
                       if exibir_produto_codigo not in codigo_produto_lista:
                           print("\n-----------------------------------------")
                           print("Valor invalido ou produto nao cadastrado")
                           print("-----------------------------------------\n")
                       else:
                           #Printar dados especificos do produto
                           print(printar_dados())
                           print("Deseja excluir os dados exibidos?")
                           variavel_escolha = (input("1. Sim\n2. Nao\n-->"))


                           #Condicoes de seguranca para excluir o produto #1.3.1
                           if(variavel_escolha == "1"):
                               #Excluir o indice especifico do produto digitado
                               nome_produto_lista.pop(exibir_produto_codigo)
                               quantidade_produto_lista.pop(exibir_produto_codigo)
                               prateleira_produto_lista.pop(exibir_produto_codigo)
                               fileira_produto_lista.pop(exibir_produto_codigo)
                               fabricante_produto_lista.pop(exibir_produto_codigo)
                               valor_custo_produto_lista.pop(exibir_produto_codigo)
                               valor_venda_produto_lista.pop(exibir_produto_codigo)
                               codigo_produto_lista.pop(exibir_produto_codigo)
                               #validade_produto_lista.pop(exibir_produto_codigo)


                               #Menssagem de exito
                               print("\n-----------------------------")
                               print("Produto excluido com sucesso!")
                               print("-----------------------------\n")
                               break
                           #nao excluir o produto
                           elif(variavel_escolha == "2"):
                               print("-----------------------------\n")
                               break
                           #Se o usuario digitar valor vazio
                           elif(variavel_escolha == ""):
                               print("\n-----------------------------------------")
                               print ("Valor invalido ou produto não cadastrado")
                               print("-----------------------------------------\n")
                           #Se o usuario digitar caracter invalidos
                           else:
                               print("\n-----------------------------------------")
                               print ("Valor invalido ou produto não cadastrado")
                               print("-----------------------------------------\n")
                   break


  1. # #Retornar ao menu principal #1.4
           elif (menu_cadastrar_produto == "4"):
               menu_cadastrar_produto = 0
               break
  1. # #Condicoes caso o usuario digite um numero errado
           else:
               print("\n------------------------")
               print("O numero ou caracter digitado e invalido.")
               print("Por favor, tente novamente.")
               print("------------------------\n")


  1. #Consultar um produto #2
   elif(menu_principal == "2"):
       while True:
           if (nome_produto_lista == []):
               print("\n-------------------------")
               print("Nenhum produto cadastrado")
               print("-------------------------\n")
           else:
               while True:
                   print("Lista de produtos cadastrados")
                   for i in range(len(codigo_produto_lista)):
                       print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                   print("\n\n")
                   exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                   if (exibir_produto_codigo not in codigo_produto_lista):
                       print("\n-----------------------------------------")
                       print("Valor invalido ou produto nao cadastrado")
                       print("-----------------------------------------\n")
                   else:
                       print(printar_dados())
                   break
           break




  1. #Controlar estoque #3
   elif(menu_principal == "3"):
       while True:
           print("--------------------------------")
           menu_controle_produto = input("1. Registrar entrada de produtos\n2. Registrar saida de produtos\n3. Saldo de estoque unitario\n4. Analise total de estoque\n5. Voltar ao menu principal\n-->")
  1. # # #Registrar entrada de produtos #3.1
           if (menu_controle_produto == "1"):
               if (nome_produto_lista == []):
                   print("\n-------------------------")
                   print("Nenhum produto cadastrado")
                   print("-------------------------\n")
               #Listar produtos cadastrados
               else:
                   while True:
                       #For que printar os produtos
                       print("Lista de produtos cadastrados")
                       for i in range(len(codigo_produto_lista)):
                           print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                       print("\n\n")
                       exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                       #Valor não contido dentro da lista de codigos
                       if exibir_produto_codigo not in codigo_produto_lista:
                           print("\n-----------------------------------------")
                           print("Valor invalido ou produto nao cadastrado")
                           print("-----------------------------------------\n")
                       else:
                           #Printar dados especificos do produto
                           print(printar_dados())
                           print("Deseja alterar a quantidade de produto exibido?")
                           variavel_escolha = (input("1. Sim\n2. Nao\n-->"))



                           #Condicao de seguraca para excluir o produto
                           if(variavel_escolha == "1"):
                               #Alterar oa quantia do produto digitado
                               quantidade_adicionada = int(input("Digite a quantidade que deseja registrar: "))
                               quantidade_nova = int(quantidade_produto_lista[exibir_produto_codigo]) + quantidade_adicionada
                               quantidade_produto_lista.pop(exibir_produto_codigo)
                               quantidade_produto_lista.insert(exibir_produto_codigo, quantidade_nova)
                               quantidade_produto_entrada += quantidade_adicionada
                               quantidade_produto_entrada_lista.insert(exibir_produto_codigo, quantidade_produto_entrada)


                               #Menssagem de exito
                               print("\n----------------------------------")
                               print("Quantidade registrada com sucesso!")
                               print("----------------------------------\n")
                               break
                           #Nao excluir o produto
                           elif(variavel_escolha == "2"):
                               print("-----------------------------\n")
                               break
                           #Se o usuario digitar valor vazio
                           elif(variavel_escolha == ""):
                               print("\n-----------------------------------------")
                               print("Valor invalido ou produto nao cadastrado")
                               print("-----------------------------------------\n")
                           #Se o usuario digitar caracter invalidos
                           else:
                               print("\n-----------------------------------------")
                               print ("Valor invalido ou produto nao cadastrado")
                               print("-----------------------------------------\n")
                   break


  1. # # #Registrar saida de produtos #3.2
           elif (menu_controle_produto == "2"):
               if (nome_produto_lista == []):
                   print("\n-------------------------")
                   print("Nenhum produto cadastrado")
                   print("-------------------------\n")
               #Listar produtos cadastrados
               else:
                   while True:
                       #For que printar os produtos
                       print("Lista de produtos cadastrados")
                       for i in range(len(codigo_produto_lista)):
                           print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                       print("\n\n")
                       exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                       #Valor nao contido dentro da lista de codigos
                       if exibir_produto_codigo not in codigo_produto_lista:
                           print("\n-----------------------------------------")
                           print("Valor invalido ou produto nao cadastrado")
                           print("-----------------------------------------\n")
                       else:
                           #Printar dados especificos do produto
                           print(printar_dados())
                           print("Deseja alterar a quantidade de produto exibido?")
                           variavel_escolha = (input("1. Sim\n2. Nao\n-->"))


                           #Condicao de seguranca para excluir o produto
                           if(variavel_escolha == "1"):
                               #Alterar a quantia do produto digitado
                               #Se a saida for maior que a quantidade atual seu programa não faz nada;-------------------------------------
                               print("\n---------------------------------------")
                               quantidade_removida = int(input("Digite a quantidade que deseja remover: "))
                               quantidade_nova = int(quantidade_produto_lista[exibir_produto_codigo]) - quantidade_removida
                               if quantidade_nova <= 10:
                                   print("O produto precisa ser reposto")
                               quantidade_produto_lista.pop(exibir_produto_codigo)
                               quantidade_produto_lista.insert(exibir_produto_codigo, quantidade_nova)
                               quantidade_produto_saida += quantidade_removida
                               quantidade_produto_saida_lista.insert(exibir_produto_codigo, quantidade_produto_saida)


                               #Menssagem de exito
                               if(variavel_escolha == "1"):
                                   print("\n---------------------------------------")
                                   print("Baixa de produto concluida com sucesso!")
                                   print("---------------------------------------\n")
                                   break
                           #nao excluir o produto
                           elif(variavel_escolha == "2"):
                               print("-----------------------------\n")
                               break
                           #Se o usuario digitar valor vazio
                           elif(variavel_escolha == ""):
                               print("\n-----------------------------------------")
                               print("Valor invalido ou produto nao cadastrado")
                               print("-----------------------------------------\n")
                           #Se o usuario digitar caracter invalidos
                           else:
                               print("\n-----------------------------------------")
                               print ("Valor invalido ou produto nao cadastrado")
                               print("-----------------------------------------\n")
                   break
  1. # # #Saldo de estoque unitario #3.3
           elif (menu_controle_produto == "3"):
               if (nome_produto_lista == []):
                   print("\n-------------------------")
                   print("Nenhum produto cadastrado")
                   print("-------------------------\n")
               #Listar produtos cadastrados
               else:
                   while True:
                       #For que printar os produtos
                       print("Lista de produtos cadastrados")
                       for i in range(len(codigo_produto_lista)):
                           print(codigo_produto_lista[i]," --- ",nome_produto_lista[i])
                       print("\n\n")
                       exibir_produto_codigo = int(input("Digite o codigo do produto: "))
                       #Valor nao contido dentro da lista de codigos
                       if exibir_produto_codigo not in codigo_produto_lista:
                           print("\n-----------------------------------------")
                           print("Valor invalido ou produto nao cadastrado")
                           print("-----------------------------------------\n")
                       else:
                           #Printar dados especificos do produto
                           print("\n------------------------")
                           print("Codd.:", codigo_produto_lista[exibir_produto_codigo])
                           print("Nome:", nome_produto_lista[exibir_produto_codigo])
                           print("Quantidade inicial: ", quantidade_produto_antiga_lista[exibir_produto_codigo])
                           print("Quantidade atual: ", quantidade_produto_lista[exibir_produto_codigo])
                           print("Data de emissao" ,)#nenhuma informação-------------------------------------------------------------------
                           print("Data de ")#nenhum informaçao-----------------------------------------------------------------------------
                           print("------------------------\n")


                           break
  1. # # #Análise total de estoque #3.4
           elif (menu_controle_produto == "4"):
               if (nome_produto_lista == []):
                   print("\n-------------------------")
                   print("Nenhum produto cadastrado")
                   print("-------------------------\n")
               else:
                   #For que printar os produtos
                   print("\n-------------------------------------")
                   print("Lista de produtos cadastrados")
                   for i in range(len(codigo_produto_lista)):
                       print(codigo_produto_lista[i]," --- ",nome_produto_lista[i], " --- Quant. disponivel: ",quantidade_produto_lista[i])
                   print("-------------------------------------\n")



  1. # # #Retornar ao menu principal #3.6
           elif(menu_controle_produto == "5"):
               break
           #Condicao caso o usuario digite um numero errado
           else:
               print("\n-----------------------------------------")
               print("O numero ou caracter digitado e invalido.")
               print("Por favor, tente novamente.")
               print("-----------------------------------------\n")
   elif(menu_principal == "4"):#não faz nada----------------------------------------------------------------------------------------------
       print("Validade")
       break



  1. #condicaoo do while, se o menu for diferente de 4 ele continua, caso contrario ele encerra e manda uma mensagem
   elif(menu_principal == "5"):
       print("Obrigado por usar nosso programa!")
       break
  1. #Condicao caso o usuario digite um numero errado
   else:
       print("\n-----------------------------------------")
       print("O numero ou caracter digitado e invalido.")
       print("Por favor, tente novamente.")
       print("-----------------------------------------\n")

</syntaxhighlight>