Estrutura de Dados
Lista de Exercícios –
Classificação/Pesquisa de Dados
Professor: Frederico Augusto Siqueira Gentil
01) Uma empresa de Telemarketing precisa otimizar o seu atendimento e solicitou os seus
serviços para desenvolver um software que automatize a entrada, armazenamento, classificação
e consultas dos atendimentos a seus clientes.
Devem ser registrados os seguintes dados dos clientes: (Código, nome do cliente, nome
do pai, nome da mãe, telefone, e-mail). Para os atendimentos, devem ser registrados os
seguintes dados: (N° do atendimento, código do cliente, assunto do atendimento, dia do
atendimento, mês do atendimento).
O sistema deverá conter o seguinte MENU:
MENU
1. Cadastrar Cliente
2. Excluir Cliente
3. Alterar Dados do Cliente
4. Atendimentos
5. Consultas
5. Relatórios
6. Sair
Sub-Menu Consultas
1. Consultar clientes por código
2. Consultar clientes por nome
3. Consultar dados do cliente através do telefone
Sub-Menu Relatório
1. Relatório de Clientes (Classificado por código)
2. Relatório de Clientes (Classificado por Nome)
3. Relatório de Atendimentos por dia (deve constar
código do atendimento, código do cliente, nome do
cliente e assunto).
Obs: No cadastro do atendimento deverá ser digitado o código do cliente e o sistema
deverá trazer o nome do referido cliente. Caso o cliente não exista, uma mensagem deverá ser
impressa.
- A implementação pode ser Seqüencial ou Encadeada.
02) Faça um programa em Java para cadastrar clientes (código, nome, área de interesse) de
forma aleatória, armazenando-os em uma árvore binária de pesquisa (considerar como campo de
ordenação o código). Após o cadastro, utilizando o encaminhamento correto, gere um array
ordenado pelo código, com os clientes cadastrados na árvore binária de pesquisa.
Sempre que houver alguma alteração no cadastro (árvore) como inclusões ou exclusões o
sistema deverá atualizar o array.
03) Faça um programa que cadastre 30 produtos de uma empresa de forma aleatória, onde
deveremos registrar as seguintes informações de cada um deles: Código (inteiro), Descrição do
Produto e Preço de compra.
Após o cadastro o sistema deverá efetuar uma classificação tendo como chave de
classificação o campo Código. Após a classificação o sistema habilitará uma opção de pesquisa
que utilizará o sistema de pesquisa binária e permitirá pesquisar a situação de cada produto,
tendo como chave de pesquisa o campo Código.
Obs:
- Caso o usuário escolha a opção de pesquisa antes da classificação ter sido efetuada,
emitir uma mensagem de erro.
- Ao ser efetuada a pesquisa, caso o sistema não encontre o Código pesquisado deverá
ser impressa a mensagem: “Produto não cadastrado !”
- Ao ser efetuada a pesquisa, caso o sistema encontre o Código pesquisado deverão ser
impressos: Descrição do Produto, Preço de Compra e Preço de Venda (Margem de lucro de
25%). Considerar que o preço de venda não deverá ser armazenado mas calculado na hora da
impressão.
- A implementação pode ser Seqüencial ou Encadeada.
04) Desenvolver um sistema de uma agenda telefônica onde deverão ser armazenados os
seguintes dados: Nome, Apelido, mês de nascimento, ano de nascimento, telefone residencial e
telefone comercial.
O menu deverá ter os seguintes itens:
1. Cadastrar Contato
2. Alterar Contato
3. Excluir Contato
4. Pesquisar
5. Relatórios
Sub-menu Pesquisar
4.1. Efetuar Pesquisa por Apelido
4.2. Efetuar Pesquisa por Nome
Sub-menu Relatórios
5.1. Relatório Geral (Nome e telefone)
5.2. Relatório por Apelido
5.3. Relatório por Nome
5.4. Relatório de aniversariantes do mês.
Os métodos de classificação e pesquisa a serem utilizados ficam a critério do aluno.
O sistema poderá ser desenvolvido utilizando implementação seqüencial ou encadeada.
05) Desenvolver um sistema em Java para cadastrar os artistas e bandas que participarão do
“Reveillon Fanese” que será realizado no período de 28 a 31 de dezembro.
Para cada banda, cadastrar:
- Código da banda no evento (seqüencial);
- Nome da Banda ou Artista;
- Cidade de origem da banda;
- Quantidade de integrantes da banda;
- Valor do cachê;
- Dia da apresentação (somente o dia)
Considerar que em cada dia só poderá ter no máximo 4 bandas.
Implementar o seguinte sistema:
MENU CONSULTAR
MENU
1. Cadastrar banda
2. Alterar informações da banda
3. Excluir banda
4. Consultar banda
5. Relatórios
6. Classificar bandas
7. Sair
4.1. Consultar banda por código
4.2. Consultar banda por Nome
4.2. Consultar banda por data
4.3. Sair
MENU RELATÓRIO
5.1. Listar bandas por Código
5.2. Custo do Evento com Bandas
5.3. Custo Médio por Banda
5.4. Programação
5.5. Sair
- A implementação pode ser Seqüencial ou Encadeada.
- A consulta por código deve ser realizada através de uma pesquisa binária.
Download

Estrutura de Dados Lista de Exercícios – Classificação/Pesquisa de