Oi, Levi! Tudo bem?
Caminho certo, porém a lista EstoqueProduto
deve ser do tipo Produto
e não Estoque
, além disso, a classe Produto
deve ser criada para representar os produtos e ao adicionar produtos, devemos criar instâncias da classe Produto
e adicioná-las ao estoque, o que podemos fazer da seguinte forma:
using System;
using System.Collections.Generic;
class Produto
{
public string Nome { get; set; }
}
class Estoque
{
public List<Produto> EstoqueProduto = new List<Produto>();
public void AdicionaProduto(Produto produto)
{
EstoqueProduto.Add(produto);
}
public void ExibeProdutos()
{
foreach (var produto in EstoqueProduto)
{
Console.WriteLine(produto.Nome);
}
}
}
class Program
{
static void Main(string[] args)
{
Estoque est = new Estoque();
Produto produto1 = new Produto { Nome = "Arroz" };
Produto produto2 = new Produto { Nome = "Feijão" };
est.AdicionaProduto(produto1);
est.AdicionaProduto(produto2);
est.ExibeProdutos();
}
}
Neste exemplo, a classe Produto
foi criada para representar os produtos, e a classe Estoque
agora contém uma lista de Produto
. Os métodos AdicionaProduto
e ExibeProdutos
foram ajustados para trabalhar com a nova classe Produto
.
Porém, deixo também como sugestão para estudo o código abaixo, que representa outra possibilidade de solução para o desafio:
class Produto
{
private double preco;
private int estoque;
public string Nome {get; set;}
public string Marca {get; set;}
public double Preco {
get => preco;
set
{
if(value > 0)
preco = value;
else
preco = 10;
}
}
public int Estoque {
get => estoque;
set
{
if(value > 0)
estoque = value;
else
estoque = 0;
}
}
public string Descricao => $"{this.Nome} {this.Marca} - {this.Preco} - Quantidade: {this.Estoque}";
}
class EstoqueDeProdutos
{
private List<Produto> Produtos {get; set;} = new List<Produto>();
public void AdicionarProduto(Produto produto)
{
Produtos.Add((produto));
Console.WriteLine($"Produto {produto.Nome} adicionado ao estoque");
}
public void ExibirProdutos()
{
if(Produtos.Count == 0)
{
Console.WriteLine("Estoque vazio. Nenhum produto disponível");
}else
{
Console.WriteLine("Lista de produtos no estoque:");
foreach(var produto in Produtos){
Console.WriteLine(produto.Descricao);
}
}
}
}
Espero ter ajudado!
Um forte abraço e bons estudos!