Anda di halaman 1dari 3

Universidade de Cabo Verde Departamento de Cincia & Tecnologia e Programao com Objectos ca

Ano lectivo 2011/2012 Projectos e Mini Projectos

Licenciatura em Engenharia Informtica e de Computadores, a o 2. Ano 1. Descrioao dos Projectos e Mini Projectos ca
Grupo I Mini Projectos 1 Implementar algoritmo recursivo para calcular o determinante de uma matriz pelo mtodo de Eliminaao de Gauss. e c Projecto 1 Pretende-se construir uma aplicaao que, de uma forma interactiva (recorrendo a c um menu), permita gerir uma lista de pessoas. Cada pessoa caracterizada pelo nome, e nmero do BI, data de nascimento e prosso. A aplicaao deve comear por apresentar u a c c o seguinte menu de operaoes: c [1] - Ler Informaao c [2] - Novas pessoas na lista [3] - Apagar pessoas da lista [4] - Listar pessoas [5] - Ordenar a lista de pessoas [6] - Pesquisar pessoas (prosso e idade) a [7] - Exit Portanto, na opo 1 deve-se ler a informaao sobre as pessoas de um cheiro de ca c texto ,a 2 opao deve permitir a introduo de novas pessoas na lista, a opo 3 deve c ca ca permitir apagar pessoas existentes na lista, a opao 4 deve apresentar a lista completa c de pessoas (com uma formatao visual minimamente aceitvel), na opap 5 deve-se ca a c ordenar a lista pelo nome (usando um dos algoritmos de ordenaao apropriado) e na c opao 6 permitir-se-a pesquisar na lista as pessoas de uma determinada prosso e de c a uma determinada idade.

Para a implementao desta aplicao deve construir uma classe para representar ca ca uma pessoa e uma classe para representar uma lista de pessoas denido os atributos, construtor(es) e mtodos apropriados. e Nota: Todos os restantes projectos devem seguir a estrutura do Projecto 1 ( menu e opoes). c Grupo II Mini Projecto 2 Implementar com um exemplo o algoritmo de ordenao HeapSort ca Projecto 2 Pretende-se construir uma aplicaao que, de uma forma interactiva (recorrendo a c um menu) permita manipular guras geomtricas tais como quadrados, rectngulos e e a c rculos. O programa deve primeiro permitir ao utilizador seleccionar o tipo de gura e logo permitir a introduao dos elementos necessrios ` caracterizao de cada uma das c a a ca guras para poder apresentar de seguida diferentes clculos, como por exemplo, os vaa lores da rea e per a metro. Para a implementaao deesta aplicao deve criar uma classe c ca para suportar cada uma das guras e respectivas operaoes e uma classe Ponto2D para c suportar pontos bidimensionais (abcissa e ordenada). Sugere-se a criaao de diferentes c construtores para as classes que representam as diferentes guras. Por exemplo, para a classe Rectngulo um construtor, por defeito podia ser um a rectngulosituado no ponto (0,0) e com dimenses nulas: a o public Rectangulo() { origem = new Ponto2D(0, 0); largura =0; comprimento =0; } enquanto outro construtor podia criar um rectngulo situado num determinado ponto a p e com dimenses passadas ao construtor o public Rectangulo(Ponto2D p, double l, double c) { origem = p; largura = l; comprimento = c; } Alem dos mtodos para o clculo da area e do per e a metro que devem ser implementados em cada classe, podem ser adicionados outros mtodos que permitam implementar e outras operaes sobre guras geomtricas. Por exemplo, para a classe c co e rculo podia ser inclu um mtodo para vericar se este c do e rculo igual a um outro dado, assim como e vericar se dois c rculos se interceptam, etc. Grupo III

Mini Projecto 3 Implementar com um exemplo o algoritmo de ordenao por fuso MergeSort ca a Projecto 3 Pretende-se construir uma aplicaao que, de uma forma interactiva (recorrendo a c um menu), permita gerir as disciplinas de um curso. Cada disciplina caracterizada e pelo nome, ano, semestre, area cient ca, ECTS, responsvel (professor), uma lista de a professores, e uma lista de alunos. Cada professor caracterizado pelo nome, nmero e u do BI, data de nascimento e cargo. Cada aluno caracterizado pelo nome, nmero e u mecanogrco e data de ingresso na instituio. A aplicaao deve comear por ler a a ca c c informaao sobre as disciplinas de um curso a partir de um cheiro de texto e logo, de c uma forma interactiva (recorrendo a um menu), deve permitir seleccionar uma disciplina e permitir a inscrio e remoo de alunos, vericar se um dado aluno est inscrito nessa ca ca a disciplina, retornar o nmero de alunos inscritos, visualizar toda a informaao sobre a u c disciplina, visualizar a lista de professores e a lista de alunos. Para a implementao ca desta aplicaao deve construir uma classe para representar uma disciplina, um aluno e c um professor denido os atributos, construtor(es) e mtodos apropriados. e Grupo IV Mini Projecto 4 Implementar com um exemplo o algoritmo de ordenaao pesquisa por disperso (search c a by hashing) Projecto 4 Pretende-se construir uma aplicao para gerir uma pequena biblioteca privada. ca Cada livro tem um no de registo (um nmero unico), um t u tulo, uma lista de autores, uma editora, uma area a que o livro pertence e um ano de edio. A aplicao deve comear ca ca c por ler a informaao dos livros de um cheiro de texto e logo deve permitir inserir c um novo livro ` lista, remover um novo livro a lista, inserir um novo autor de um livro, a ` apresentar a lista com todos os livros ordenados pelo seu t tulo, procurar um determinado livro (dado um titulo), apresentar a lista com os livros de um determinado autor e listar os livros de um determinado ano de edio. Para a implementaao desta aplicaao ca c c deve construir uma classe para representar um livro e uma classe para representar uma biblioteca, denido os atributos, construtor(es) e mtodos apropriados. e
Prof: Robert de Sousa