Ajudem a resolver ódio isso

Identifique as classes e implemente um programa para a seguinte especificação: “O supermercado
vende diferentes tipos de produtos. Cada produto tem um preço e uma quantidade em estoque. Um pedido de
um cliente é composto de itens, onde cada item especifica o produto que o cliente deseja e a respectiva
quantidade. Esse pedido pode ser pago em dinheiro, cheque ou cartão.”

Qual o motivo pra ódio, jovem? É só um exercício, não se desgaste tão rápido.

Mais importante, sempre dê mais detalhes do que já tentou e onde está a sua dificuldade. Recomendo a leitura deste tópico: Como fazer uma boa pergunta? .

Uma análise simples que você pode fazer nesse tipo de enunciado é separar os substantivos e os verbos. Substantivos indicam informações e são candidatos a serem classes e atributos, e verbos indicam ações que podem virar métodos Palavras como e e ou podem indicar condições a serem implementadas (regras do negócio). Veja:

O supermercado vende diferentes tipos de produtos. Cada produto tem um preço e uma quantidade em estoque. Um pedido de um cliente é composto de itens, onde cada item especifica o produto que o cliente deseja e a respectiva quantidade. Esse pedido pode ser pago em dinheiro, cheque ou cartão.

Nem tudo precisa virar uma classe, método ou atributo, mas logo você nota as necessidades. No caso, você tem algo como:

  • supermercado: pode ser a classe principal com o método main, permitindo cadastrar produtos e pedidos;
  • produto: é o que vai ser vendido, e tem um preço (unitário) e uma quantidade em estoque ao menos;
  • cliente: pode ser uma classe, mas também pode ser um atributo simples do pedido (algo como String nomeDoCliente);
  • pedido: tem um cliente, um número X de itens e uma forma de pagamento, que pode ser dinheiro, cheque ou cartão (que pode ser uma String simples ou um enum, por exemplo);
  • item: é o item dentro de um pedido. Possui um produto e uma quantidade ao menos;

Algumas coisas ficam opcionais ou não estão diretamente listadas. Por exemplo, não diz se essa aplicação precisa simular vários pedidos, mas sua classe supermercado pode ter um método novoPedido pra criar o pedido.

A partir daí, você determina o fluxo de operação e cria os métodos e verificações necessários, como cadastrar produtos, cadastrar pedidos, informar o cliente, etc.

Espero ter ficado um pouco mais claro.

Abraço.

1 curtida