1
resposta

Controle de estoque

def titulo(txt):
    print('=' * len(txt))
    print(txt)
    print('=' * len(txt))

def quantidade():
    x = int(input('Insira a quantidade de livros no estoque: '))
    return x

def controle_vendas():
    while True:
        try:
            y = int(input('Informe a quantidade de livros que deseja comprar: '))
            if y > 0:
                return y
            else:
                print('Digite um número positivo')
        except ValueError:
            print('Digite um número válido.')


def controle_estoque(estoque):
    while estoque > 0:
        vendas = controle_vendas()
        if estoque >= vendas:
            estoque -= vendas
            print(f'Foram vendidas {vendas} unidades! Estoque restante: {estoque}')
        else:
            print('Quantidade indisponível') 
    
    print('Estoque esgotado.')

        
def main():
    titulo('CONTROLE DE ESTOQUE')
    estoque = quantidade()
    controle_estoque(estoque)

if __name__ == '__main__':
    main()
1 resposta

Olá, Giovanni! Como vai?

Parabéns pela resolução da atividade!

Vi que você explorou o tratamento de exceções para validar entradas com Python, utilizou muito bem a função para organizar a lógica e ainda compreendeu a importância do laço while para controlar o fluxo de vendas até o estoque acabar.

Continue postando as suas soluções, com certeza isso ajudará outros estudantes e tem grande relevância para o fórum.

Uma dica interessante para o futuro é permitir que o programa registre o total de vendas realizadas, além de controlar o estoque. Assim:

def controle_estoque(estoque):
    total_vendas = 0
    while estoque > 0:
        vendas = controle_vendas()
        if estoque >= vendas:
            estoque -= vendas
            total_vendas += vendas
            print(f'Foram vendidas {vendas} unidades! Estoque restante: {estoque}')
        else:
            print('Quantidade indisponível') 
    
    print(f'Estoque esgotado. Total de vendas: {total_vendas}')

Isso faz o programa fornecer um resumo final mais completo.

Fico à disposição!

AluraConte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!