1
resposta

Resposta - Controle de estoque

class Produto
{
    public Produto(string nome, int quantidadeInicial)
    {
        Nome = nome;
        QuantidadeInicial = quantidadeInicial;
    }
    public string Nome { get; set; }
    public int QuantidadeInicial { get; set; } = 20 ;
    private int _quantidadeEstoque;

    public int Retirada(int quantidade)
    {
        Console.Write("Quantos itens deseja Retirar: ");
        quantidade = int.Parse(Console.ReadLine()!);
        _quantidadeEstoque = QuantidadeInicial - quantidade;

        if (quantidade >= QuantidadeInicial)
        {
            Console.WriteLine($"Erro: Estoque insuficiente para a retirada de {quantidade} unidades.");
            _quantidadeEstoque = QuantidadeInicial;
        }
        else
        {
            Console.WriteLine($""""

                Retirada de {quantidade} realizada com sucesso.
                Produto: {Nome}
                Estoque: {QuantidadeInicial}
                """");

        }
            Console.Write("A quantidade Atual do Estoque é: ");
        
            return _quantidadeEstoque;
    }

}
#region Controle de Estoque
Produto produto = new Produto("Caneta Azul",20);
Console.WriteLine(produto.Retirada(0));
#endregion
1 resposta

Oi, Ulysses! Como vai?

Do jeito que você explicou, chamou atenção o uso da classe Produto para representar bem o conceito de estoque, além da validação para evitar retiradas maiores que a quantidade disponível, o que mostra uma boa preocupação com regras de negócio.

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