1
resposta

Faça como eu fiz: controle de estoque

Program.cs

Produto produto = new Produto("Caneta Azul", 20);
produto.Retirar(5);
produto.ExibirEstoque();
produto.Retirar(30);

Produto.cs

using System.Reflection.PortableExecutable;

class Produto
{
    public string Nome { get; set; }

    private int quantidadeEstoque;

    public Produto(string nome, int quantidadeEstoque)
    {
        Nome = nome;
        this.quantidadeEstoque = quantidadeEstoque;
    }

    public void Retirar(int quantidade)
    {
        if (quantidade > quantidadeEstoque)
        {
            Console.WriteLine($"Você possui somente {quantidadeEstoque} em estoque.");
        }
        else
        {
            quantidadeEstoque -= quantidade;
            Console.WriteLine($"A quantidade do estoque foi reduzida {quantidadeEstoque}");
        }
    }

    public void ExibirEstoque()
    {
        Console.WriteLine($"Estoque atual de {Nome}: {quantidadeEstoque}");
    }
}
1 resposta

Oi, Horizon! Como vai?

Gostei da forma como você estruturou a lógica para controle de estoque, principalmente a verificação da quantidade antes de realizar a retirada. Isso torna seu código mais seguro.

Uma dica interessante para o futuro, se você quiser testar, é usar o método ToUpper() quando quiser padronizar comparações de strings, por exemplo, ao buscar um produto por nome:


string nomeProduto = "caneta azul";
if (produto.Nome.ToUpper() == nomeProduto.ToUpper())
{
    Console.WriteLine("Produto encontrado!");
}

O comando ToUpper() transforma a string em letras maiúsculas, facilitando comparações sem se preocupar com letras maiúsculas ou minúsculas.

Conteúdos relacionados
Alura

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