Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Minha Solução] Desafio Classe Produto e Preço Médio

Desafio4: Crie uma classe Produto com propriedades como nome e preço. Em seguida, crie uma lista de produtos e utilize um loop para calcular e imprimir o preço médio dos produtos.


import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

public class Produto {
    private String nome;
    private double preco;

    List<String> nomeProduto = new ArrayList<>();
    List<Double> precoMedio = new ArrayList<>();
    Scanner sc = new Scanner(System.in);

    //Construtor
    public Produto(double preco, String nome) {
        this.nome = nome;
        this.preco = preco;
    }

    //Sobrecarga Método toString
    @Override
    public String toString() {
        return "Nome produto: " + this.getNome() + " - " + "Preço: R$ " + this.getPreco();
    }

    //método entra informações no sistema
    public void entrarDados() {
        int opcao = 1;
        System.out.println("===== SISTEMA DE CADASTRO =====");
        do {
            System.out.println("Insira o nome do Produto: ");
            this.setNome(sc.next());
            nomeProduto.add(this.getNome());
            System.out.println("Insira o preço do produto: ");
            this.setPreco(sc.nextDouble());
            precoMedio.add(this.getPreco());
            System.out.println("Deseja realizar novo cadastro? ");
            System.out.println("0 - NÃO");
            System.out.println("1 - SIM");
            opcao = sc.nextInt();

            if (opcao == 0) {
                System.out.println("Listando as informações Cadastradas!");
                for (int i = 0; i < nomeProduto.size(); i++) {
                    System.out.println("Nome Produto: " + nomeProduto.get(i).toString()
                    + " - " + "Preço Produto: R$" + precoMedio.get(i));
                    System.out.println("=============================================");
                }
            }
        } while (opcao == 1);
    }

    //método calcula preco médio
    public void calcularPrecoMedio() {
        double somarValor = 0;
        double valorMedio = 0;

        for (int i = 0; i < precoMedio.size(); i++){
            somarValor = somarValor + precoMedio.get(i);
        }
        System.out.println("Valor total dos produtos: " + " R$: " + somarValor);
        System.out.println("=================================================");
        for (String produto : nomeProduto) {
            valorMedio = somarValor / nomeProduto.size();
            System.out.println("Preço médio dos Produtos: " + " R$ " + valorMedio);
            System.out.println("================================================");
            }
    }

    //getters e setters
    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    public double getPreco() {
        return preco;
    }

    public void setPreco(double preco) {
        this.preco = preco;
    }
}

public class Principal {
    public static void main(String[] args) {
        Produto produto = new Produto(0, "");
        produto.entrarDados();
        produto.calcularPrecoMedio();
    }
}

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

1 resposta
solução!

Oi, Carlos! Tudo bem?

Excelente código, parabéns pelo projeto! Espero que esteja gostando do curso! Colocar em execução as atividades propostas pelo professor em aula é uma prática muito importante para internalizarmos o conteúdo. Caso tenha ficado alguma dúvida em relação ao curso ou atividade, sinta-se à vontade em comunicar, estou à disposição e ficarei super feliz em poder ajudar!

Um forte abraço e bons estudos!