1
resposta

Lista de exercícios

void main() {
  ItemEstoque smartphone = ItemEstoque("Smartphone", 100, "R\$2000.00");
  ItemEstoque notebook = ItemEstoque("Notebook", 50, "R\$5000.00");
  ItemEstoque foneDeOuvido = ItemEstoque("Fone de ouvido", 200, "R\$100.00");
  ItemEstoque ringLight = ItemEstoque("RingLight", 20, "R\$50.00");
  ItemEstoque capinhaDeCelular = ItemEstoque("Capinha de celular", 300, "R\$20.00");

  smartphone.registrarEntrada(20);
  notebook.registrarSaida(10);
  foneDeOuvido.preco = "R\$80,00";

  List<ItemEstoque> produtos = <ItemEstoque>[smartphone, notebook, foneDeOuvido, ringLight, capinhaDeCelular];

  for (ItemEstoque estoque in produtos) {
    print('Item: ${estoque.item}, Quantidade: ${estoque.quantidade}, Preço: ${estoque.preco}');
  }
}

class ItemEstoque {
  String item;
  int quantidade;
  String preco;

  ItemEstoque(this.item, this.quantidade, this.preco);

    void registrarEntrada(int quantidadeEntrada) {
    if (quantidadeEntrada > 0) {
      quantidade += quantidadeEntrada;
    }
  }

  void registrarSaida(int quantidadeSaida) {
    if (quantidadeSaida > 0 && quantidadeSaida <= quantidade) {
      quantidade -= quantidadeSaida;
    } else {
      print('Não foi possível registrar a saída de "$item". Quantidade insuficiente.');
    }
  }
}
1 resposta

Olá, Youssef, como vai?

Seu exercício está muito bem implementado e você conseguiu cobrir todas as etapas solicitadas no desafio. As operações de entrada e saída de estoque estão funcionando corretamente e a ideia de adicionar o preço como string facilita a visualização para o usuário, já que mostra o valor já formatado. Uma dica: você pode considerar utilizar o tipo double para o preço internamente e formatá-lo para exibição somente no print. Isso ajuda na hora de fazer cálculos ou aplicar descontos, caso precise futuramente.

Continue compartilhando seus exercícios por aqui. O fórum está à disposição para tirar suas dúvidas sempre que precisar.

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