0
respostas

Resposta - Exercício 3

Exercício 3:

public class Stock
{
    private List<Product> _products = new List<Product>();

    public void AddProduct(Product product)
    {
        _products.Add(product);
    }

    public void DisplayProducts()
    {
        Console.WriteLine("Products in stock:");
        foreach (Product product in _products)
        {
            Console.WriteLine(product.DetailedDescription);
        }
    }
}
public class Product
{
    private double _price;
    private int _stock;
    public string Name { get; set; }
    public string Brand { get; set; }
    public double Price
    {
        get => _price;
        set
        {
            if (value < 0)
                throw new ArgumentOutOfRangeException(nameof(Price), "Price cannot be negative.");
            _price = value;
        }
    }
    public int Stock
    {
        get => _stock;
        set
        {
            if (value < 0)
                throw new ArgumentOutOfRangeException(nameof(Stock), "Stock cannot be negative.");
            _stock = value;
        }
    }
    public string DetailedDescription => $"Product: {this.Name} - Brand: {this.Brand} - Stock: {this.Stock} - Price: {this.Price:F2}";

    public Product(string name, string brand, double price, int stock)
    {
        Name = name;
        Brand = brand;
        Price = price;
        Stock = stock;
    }
}
Product candy = new Product("Candy", "Halls", 4.99, 40);
Product cookie = new Product("Cookie", "Oreo", 10, 60);
Product rice = new Product("Rice", "Camil", 30, 20);

Stock stock = new Stock();
stock.AddProduct(candy);
stock.AddProduct(cookie);
stock.AddProduct(rice);
stock.DisplayProducts();