Академический Документы
Профессиональный Документы
Культура Документы
SUPERVISIONADAS
CST em Anlise e Desenvolvimento de Sistemas
4. Srie
Estrutura de Dados
AUTORIA:
Thiago Salhab Alves
Faculdade Anhanguera de Santa Barbara do Oeste
Pg. 2 de 10
COMPETNCIAS E HABILIDADES
Ao concluir as etapas propostas neste desafio, voc ter desenvolvido as competncias
e habilidades que constam, nas Diretrizes Curriculares Nacionais, descritas a seguir.
Competncia para identificar, analisar e documentar oportunidades, problemas e
necessidades passveis de soluo via computao, e para empreender na
concretizao desta soluo.
Capacidade de abstrao, representao, organizao e viabilizao de solues de
software para diferentes domnios de aplicao.
Habilidade em tomar decises e saber implement-las.
Produo Acadmica
Participao
Esta atividade ser, em parte, desenvolvida individualmente pelo aluno e, em parte,
pelo grupo. Para tanto, os alunos devero:
DESAFIO
Estrutura de Dados o nome dado a organizao de dados e algoritmos de forma
coerente e racional de modo a otimizar o seu uso. Por meio da maneira como os dadosso
organizados e como as operaes so efetuadas sobre estes dados, se podem solucionar de
forma simples problemas extremamente complexos. Existem diversos modelos de estruturas
de dados, e novos modelos so criados constantemente, pois acompanham tambm a
evoluo dos algoritmos e das linguagens de programao. Escolher uma estrutura de dados
ideal pode tornar-se um problema difcil para uma determinada soluo. As pesquisas e
estudos das estruturas de dados esto em constante desenvolvimento, apesar disso, existem
estruturas que tm se mostrado padro, ou seja, so clssicas. Podemos citar as listas, pilhas,
filas, rvores e grafos como estruturas de dados clssicas.
Neste desafio, dever ser apresentada uma soluo computacional baseada em
Estruturas de Dados para uma empresa area chamada VOEBEM que deseja automatizar
alguns processos adotados pela companhia. A empresa necessita de um sistema que permita
controlar a lista de voos dirios e de passageiros por vos, realize a reserva de assentos e
liberao para taxiamento das aeronaves, realize o controle de armazenamento das bagagens
no compartimento de carga e realize levantamento das rotas de voos.
Pg. 3 de 10
Objetivo do Desafio
Utilizar as estruturas de dados listas, pilhas, filas e grafos para resolver problemas
computacionais de uma empresa area atravs da construo de algoritmos para controle de
voos e passageiros, reserva de assentos e liberao para taxiamento de aeronaves, controle de
armazenamento das bagagens e levantamento das rotas de voos.
PASSOS
Passo 1 (Aluno)
1. Fazer a leitura do captulo 1: Introduo s Estruturas de Dados do livro texto da
disciplina de Estrutura de Dados (TENEMBAUM, A.; LANGSAM, Y.; AUGESTEIN, M.
Estrutura de Dados usando C. 1 ed. So Paulo: Pearson, 2007) focando a leitura em
Vetores em C e implementao de Estruturas em C.
2. Fazer a leitura do material de aula: Vetores e Matrizes. Disponvel em:
<https://docs.google.com/open?id=0B_uLQd5hdqlWcnBnQVk0YVpTUXFzUmMyc1N
WaVpvQQ>. Acesso em: 26 mar. 2012. Buscar compreender o conceito de Alocao
Esttica de Memria que faz a utilizao de Vetores e Matrizes.
Passo 2 (Equipe)
Fazer a discusso do contedo de texto e da aula lida, que ser utilizado para produzir
relatrio e implementao de uma estrutura, com destaque para:
1. alocao de Memria;
2. ponteiros em C;
3. estruturas de dados e C;
4. vetores em C;
5. implementando vetores unidimensionais;
6. operaes com strings de caracteres;
7. estruturas em C;
Thiago Salhab Alves
Pg. 4 de 10
8. implementando estruturas.
Passo 3 (Equipe)
Fazer as seguintes atividades:
1. Descrever e exemplificar o que alocao esttica de memria.
2. Fazer um programa em Linguagem C que implemente uma estrutura avio(structaviao),
permitindo o cadastro e a exibio, com os seguintes campos:
modelo;
fabricante;
passageiros;
comprimento;
altura;
velocidade;
altitude;
motor.
3. Considerar como exemplo a criao da estrutura aluno:
struct aluno
{
intra;
char nome[30];
charendereco[50];
char curso[60];
char email[60];
};
Passo 4 (Equipe)
Elaborar e entregar ao professor um relatrio com o nome de Relatrio 1 - Estrutura de
Dados contendo as atividades desenvolvidas nos passos anteriores.
PASSOS
Passo 1 (Aluno)
1. Fazer a leitura do material de aula: Alocao Dinmica de Memria. Disponvel em:
<https://docs.google.com/open?id=0B_uLQd5hdqlWTVFzdzZRYTZSSDJRRm9hLVg1Rj
Thiago Salhab Alves
Pg. 5 de 10
RxZw>. Acesso em: 26 mar. 2012. Focar a leitura no funcionamento da alocao dinmica
de memria, funo malloc() e funo free().
2. Fazer a leitura do captulo 4: Filas e Listas do livro texto da disciplina de Estrutura de
Dados (TENEMBAUM, A.; LANGSAM, Y.; AUGESTEIN, M. Estrutura de Dados usando
C. 1 ed. So Paulo: Pearson, 2007) focando a leitura na implementao de Listas Ligadas.
3. Fazer a leitura do material de aula: Lista Simplesmente Encadeada. Disponvel em:
<https://docs.google.com/open?id=0B_uLQd5hdqlWQXdYT19jQUJUd2Vob1BYQ3dWZ
Ekydw>. Acesso em: 26 mar. 2012. Focar a leitura na implementao de listas
simplesmente encadeada.
Passo 2 (Equipe)
1. Fazer um programa em Linguagem C que criem uma estrutura de dados voo(struct voo)
para a empresa VOEBEM, que servir para implementar funes para controle da lista
dos voos. A estrutura voo deve ser implementada de forma dinmica e deve conter os
seguintes dados:
nmero do voo;
data do voo;
horrio do voo;
aeroporto de Sada;
aeroporto de Chegada;
rota;
tempo estimado de voo;
passageiros a bordo;
2. Implementar a funo cadastrarVoo() que deve permitir o cadastro de um novo voo;
3. Implementar a funo consultaVoo() que deve permitir obter as informaes do voo com
base na digitao do nmero do voo;
4. Implementar a funo removeVoo() que permita a excluso de um determinado voo.
Passo 3 (Equipe)
1. Fazer um programa em Linguagem C que implemente a estrutura passagem (struct
passagem) para a empresa VOEBEM que servir para implementar funes para controle
da lista de passagens areas vendidas. A estrutura passagem deve ser implementada de
forma dinmica e deve conter os seguintes dados:
nmero da Passagem;
nmero do Voo;
data Embarque;
horrio de Embarque;
porto de Embarque.
2. Implementar a funo cadastrarPassagem() que deve permitir o cadastro de uma nova
passagem;
3. Implementar a funo consultaPassagem() que deve permitir obter informaes sobre a
passagem com base na digitao do nmero da passagem.
Pg. 6 de 10
Passo 4 (Equipe)
Elaborar e entregar ao professor um relatrio com o nome Relatrio 2 - Listas Ligadas,
contendo as atividades desenvolvidas nos passos anteriores desta etapa. Para os programas,
apresentar no relatrio o cdigo fonte e telas do uso do sistema.
PASSOS
Passo 1 (Aluno)
1. Fazer a leitura do captulo 4: Filas e Listas do livro texto da disciplina de Estrutura de
Dados (TENEMBAUM, A.; LANGSAM, Y.; AUGESTEIN, M. Estrutura de Dados usando
C. 1 ed. So Paulo: Pearson, 2007) focando a leitura na implementao de Filas em C.
2. Fazer a leitura do captulo 2: A Pilha do livro texto da disciplina de Estrutura de Dados
(TENEMBAUM, A.; LANGSAM, Y.; AUGESTEIN, M. Estrutura de Dados usando C. 1
ed. So Paulo: Pearson, 2007) focando a leitura na implementao de Pilhas em C.
3. Fazer
a
leitura
do
material
de
aula:
Filas.
Disponvel
em:
<https://docs.google.com/open?id=0B_uLQd5hdqlWUVV6N0FxbzdRZm1KT0d2Y282b
U1Zdw>. Acesso em: 26 mar. 2012. Focar a leitura na implementao de filas.
4. Fazer
a
leitura
do
material
de
aula:
Pilhas.
Disponvel
em:
<https://docs.google.com/open?id=0B_uLQd5hdqlWUVV6N0FxbzdRZm1KT0d2Y282b
U1Zdw>. Acesso em: 26 mar. 2012. Focar a leitura na implementao de pilhas.
Passo 2 (Equipe)
1. Fazer um programa em Linguagem C que implemente a estrutura taxiamento
(structtaxiamento) para controlar a Liberao para Taxiamento das Aeronaves para
decolagem na pista de voos. O taxiamento e as decolagens devem obedecer uma fila para
no haver choques entre as aeronaves a decolar e que esto pousando. A estrutura
Pg. 7 de 10
Pg. 8 de 10
PASSOS
Passo 1 (Aluno)
1. Fazer a leitura do captulo 8: Grafos e Suas Aplicaes do livro texto da disciplina de
Estrutura de Dados (TENEMBAUM, A.; LANGSAM, Y.; AUGESTEIN, M. Estrutura de
Dados usando C. 1 ed. So Paulo: Pearson, 2005) focando a leitura na aplicao e
representaes de Grafos em C.
2. Fazer a leitura do material de aula: Grafos e Suas Aplicaes. Disponvel em:
<https://docs.google.com/open?id=0B_uLQd5hdqlWdU9tQi1yS1pTQXUzNEQ1d3Bsbk
ZBUQ>. Acesso em: 26 mar. 2012. Focar a leitura na implementao de filas.
Passo 2 (Equipe)
Fazer a discusso da leitura do captulo do livro texto e do material de aula, que ser
utilizado como base para a implementao de rotas de voos por meio da estrutura grafo, com
destaque para:
1. Representao de Grafos em C.
2. Algoritmo de Menor Caminho.
3. Representao por meio de Matriz de Adjacncia.
4. Caminhamento em Amplitude.
5. Caminhamento em Profundidade.
Passo 3 (Equipe)
1. Fazer um programa em Linguagem C que implemente um levantamento de rotas entre
uma Cidade A e uma Cidade B por meio de um Grafo, utilizando Matriz de Adjacncia.
Considerar um total de dez cidades e fazer a ligao entre elas considerando as distncias
e tempo voo. Para percorrer da Cidade A para a Cidade B, considerar como melhor opo
a distncia e o tempo de voo. A Figura 1 apresentada a seguir, representa um mapa de
rotas de voos de cidades brasileiras. Considerar, por exemplo, o deslocamento entre a
cidade de Belo Horizonte Fortaleza. Podem-se considerar as seguintes rotas de voos:
1. Belo Horizonte Fortaleza.
2. Belo Horizonte So Lus Fortaleza.
3. Belo Horizonte Recife Fortaleza.
4. Belo Horizonte Salvador Recife Fortaleza.
Pg. 9 de 10
Figura 1 MapadeRotas
Fonte: <http://donome.com.br/rotas-de-voos-da-azul-linhas-aereas-nacionais-internacionais-e-aeroportos/>.
Acesso em: 28 mar. 2012.
Seminrio de Concluso
Com o objetivo de apresentar os resultados obtidos por meio da ATPS, o Seminrio Final
pretende proporcionar aos estudantes a socializao das variaes de resultados, bem como o
debate a respeito das dificuldades e solues encontradas para a finalizao do desafio.
Cada equipe dever realizar uma apresentao de vinte minutos, contendo at vinte
slides.
Esta apresentao dever contemplar a seguinte estrutura:
Introduo: base terica utilizada para soluo do desafio.
Desenvolvimento: a partir da apresentao parcial elaborada na etapa 2, descrever
as solues encontradas para a resoluo final do desafio.
Concluso: explicar como as solues encontradas para a resoluo final do
desafio, podero contribuir efetivamente em sua vida profissional.
A apresentao do Seminrio Final de cada curso dever ocorrer em sua unidade, em
local e data a serem definidos pelo professor da disciplina e o coordenador de curso.
Pg. 10 de 10
Padronizao
O material escrito solicitado nesta atividade deve ser produzido de acordo com as
normas da ABNT, com o seguinte padro (exceto para produes finais no textuais):
se houver citaes com mais de trs linhas, devem ser em fonte tamanho 10, com
um recuo de 4cm da margem esquerda e espaamento simples entre linhas;
ttulo da atividade;