·

Engenharia de Software ·

Estrutura de Dados

Send your question to AI and receive an answer instantly

Ask Question

Preview text

Este trabalho tem como objetivo exercitar os conceitos grafos feitos com listas encadeadas de adjacência conforme foram estudadas em sala de aula Sua missão é desenvolver para a ANAC Agência Nacional de Aviação Civil um programa para facilitar a organização da malha aérea do país Basicamente você vai ter que criar uma estrutura de dados para cadastrar os aeroportos do país e os voos feitos entre os aeroportos Inicialmente você vai considerar apenas os seguintes aeroportos Belo Horizonte CNF Brasília BSB Rio de Janeiro GIG Salvador SSA e São Paulo GRU mas sua estrutura deverá comportar quantos aeroportos forem desejados Uma forma de cadastrar e organizar os voos é através de uma lista de listas encadeadas de adjacência basicamente implementase uma lista onde cada posição contém os dados de um aeroporto e uma lista encadeada indicando quais os aeroportos que estão ligados a ele Isso pode ser observado na figura abaixo saindo de Belo Horizonte CNF existem voos para Salvador SSA Rio de janeiro GIG e São Paulo GRU Logo a lista encadeada do registro CNF possui três elementos contendo os índices destas cidades na lista encadeada de adjacência de aeroportos 05 03 04 Já saindo de Salvador existe apenas um voo que é para Belo Horizonte veja a direção das setas na figura Logo a lista encadeada da cidade de Salvador possui apenas um elemento A estrutura à esquerda representa as rotas indicadas no mapa a direita Figura 1 Diagrama fictício de alguns voos no Brasil representados por uma lista de listas Nesse trabalho você deverá implementar essa estrutura Considere que cada elemento da lista principal é uma estrutura contendo o nome da cidade o código do aeroporto além da lista encadeada de voos Cada elemento das listas secundárias deve conter uma estrutura contendo o índice da cidade destino e o número do voo As seguintes operações devem ser implementadas 1 Cadastramento de um novo aeroporto 2 Cadastramento de um voo com um determinado número entre dois aeroportos identificados pelos seus códigos 3 Remoção de um voo indicado pelo número 4 Listagem na tela de todos os voos número e nome da cidade destino que saem de um determinado aeroporto e 5 Listagem na tela dos voos número e cidade destino de todos aeroportos A implementação das listas de sua estrutura deverá ser feita pela implementação de uma estrutura como a estudada em sala de aula Você deve fazer testes de consistência se essas operações podem ser aplicadas e deve imprimir mensagens de sucesso ou falha Crie um menu que permita ao usuário realizar cada uma das operações acima Você deverá fazer vários testes com o seu programa Em especial cadastre os aeroportos e voos mostrados no exemplo e realize as seguintes operações 1 Funcionalidade 4 com CNF 2 Funcionalidade 3 com 890 3 Funcionalidade 3 com 101 4 Funcionalidade 5 Para o trabalho ser considerado entregue o aluno deverá gravar um vídeo que deverá demonstrar o funcionamento do projeto bem como explicar a implementação IMPORTANTE a apresentação INTEIRA deve ser um ÚNICO vídeo que deve começar com o aluno se apresentando O trabalho vídeo e código que deve ser entregue no CANVAS Comentários finais 1 Comece a fazer este trabalho logo enquanto o problema está fresco na memória e o prazo para terminálo está tão longe quanto pode estar 2 Trabalhos copiados serão penalizados com atribuição de nota zero tanto para quem copiou como para quem viabilizou a cópia