Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
1 UNIVERSIDADE FEDERAL DE OURO PRETO INSTITUTO DE CIÊNCIAS EXATAS E BIOLÓGICAS DEPARTAMENTO DE COMPUTAÇÃO BCC702 – PROGRAMAÇÃO DE COMPUTADORES II 6a Aula prática de BCC702 – Programação Orientada a Objetos Herança 1. Defina uma classe chamada Produto para armazenar as informações de um produto. A classe deve armazenar o código do produto, nome do produto e a quantidade armazenada. O método construtor deve receber o código, o nome e a quantidade. A classe deve possuir métodos get para todos os campos. Deve oferecer ainda uma rotina onde se informa uma certa quantidade a ser retirada do estoque e outra onde se informa uma certa quantidade a ser acrescida ao estoque. A rotina onde se informa uma quantidade a ser retirada do estoque deve retornar a quantidade que efetivamente foi retirada (para os casos em que havia menos produtos do que o solicitado). Acrescente também um método que imprime as informações de um produto. 2. Defina uma classe derivada da classe Produto chamada ProdutoPerecivel que possui atributos extras que guardam a data de fabricação do produto (mês e ano). As rotinas através das quais se informa as quantidades a serem retiradas ou acrescidas do estoque devem ser alteradas. A rotina de retirada deve receber também por parâmetro a data corrente (mês e ano). Se os produtos já estiverem armazenados há mais de 2 meses a rotina deve zerar o estoque e devolver 0, pois produtos vencidos são jogados fora. A rotina de acréscimo no estoque só deve acrescentar os novos produtos caso o estoque esteja zerado, de maneira a evitar misturar produtos com prazos de validade diferenciados. Acrescente também um método que imprime os dados de um produto perecível. 3. Teste as classes implementadas nos exercícios 1 e 2. 4. Defina uma classe ProdutoComPreco derivada de Produto que possua um campo para armazenar o preço unitário do produto. A classe deve oferecer rotinas para permitir obter o preço unitário, alterar o preço unitário (sempre positivo). 5. Defina uma classe chamada Estoque que mantém uma lista com os produtos em estoque (do tipo ProdutoComPreco). A classe deve ter métodos para o cadastramento de produtos, consulta a produtos (através do código), inserções e retiradas do estoque bem como para informar o custo total do estoque armazenado. 6. Teste as classes implementadas nos exercícios 4 e 5.