Mini-prova

Paulo Borba

Centro de Informática

Universidade Federal de Pernambuco

 

Recife, 14 de agosto de 2002

 


  1. Defina em Java os tipos ProdutoSimples, ProdutoComposto, e ProdutoMultiplo, cujos objetos são os produtos vendidos em um supermercado. Cada produto tem o seu código de barras, a sua descrição, e o seu preço. Os produtos compostos são formados por outros produtos (simples, múltiplos ou outros compostos), como em uma cesta básica, por exemplo. Isto é, o produto composto cesta básica é formado por vários produtos: feijão, arroz, fubá, etc. Assim, além de um código de barras, uma descrição, e um preço, um produto composto tem também um array com os seus produtos associados. Os produtos múltiplos correspondem a pacotes com várias unidades de um mesmo produto (simples, composto, ou outro múltiplo). Assim, os produtos múltiplos contêm informação sobre o produto empacotado e o número de unidades em cada pacote. Além de definir as classes, defina um método que retorna o valor do desconto oferecido no preço de cada produto. Para os produtos simples, não há desconto. Para os produtos compostos, o desconto é a diferença entre o preço do produto composto e o somatório dos preços dos produtos constituintes. Já para os produtos múltiplos, o desconto é a diferença entre o preço do produto múltiplo e a multiplicação do preço da unidade pelo número de unidades.