Colectânea de Exercícios Folha 5 Classes e memória dinâmica 1. Implemente uma classe Empregado contendo os dados número, nome e salário e os métodos selectores e modificadores que entender necessários. 2. Implemente uma classe Empresa que possui um vector de empregados e métodos para inserir e aceder a um empregado do vector, sendo que um empregado é identificado univocamente pelo seu número. Além disso, deve conter um método actualizaSalario que processa cada um dos elementos do vector e dá um aumento de 10% aos empregados cujo salário é inferior a 1000 e de 5% àqueles cujo salário está entre 1000 e 3000 euros. Os que tiverem salário acima de 3000 não devem ter aumento. 3. Faça um programa para testar estas duas classes. Polimorfismo 4. Implemente uma classe abstracta de nome Forma onde são declarados dois métodos abstractos: float calcularArea(); float cacularPerimetro(); 5. Crie, como subclasse de Forma, uma classe de nome Rectangulo cujas instâncias são caracterizadas pelos atributos lado e altura ambos do tipo float. Implemente na classe Rectangulo os métodos herdados de Forma e outros que ache necessários. 6. Crie, como subclasse de Forma, uma classe de nome Circulo cujas instâncias são caracterizadas pelo atributo raio do tipo float. Implemente na classe Circulo os métodos herdados de Forma e outros que ache necessários. 7. Crie, como subclasse de Rectangulo, uma classe de nome Quadrado cujas instâncias são caracterizadas por terem os atributos lado e altura com o mesmo valor. 8. Elabore um programa de teste onde é declarado um vector, de dimensão indicada pelo utilizador, que contém Formas. Nesse vector devem ser guardadas instâncias de Rectangulo, Circulo e Quadrado, à escolha do utilizador. Depois implemente um ciclo que percorra o vector evocando, relativamente a cada um dos objectos guardados, os métodos calcularArea e calcularPerimetro. Universidade da Madeira Departamento de Matemática e Engenharias Elsa Carvalho Estruturas de Dados e Algoritmos 2005/06