Escreva um programa que simule o controle de uma pista de decolagem de aviões em um aeroporto. Neste programa, o usuário deve ser capaz de realizar as seguintes tarefas: a) Listar o número de aviões aguardando na fila de decolagem; b) Autorizar a decolagem do primeiro avião da fila; c) Adicionar um avião à fila de espera; d) Listar todos os aviões na fila de espera; e) Listar as características do primeiro avião da fila. Considere que os aviões possuem um nome e um número inteiro como identificador. Adicione outras características conforme achar necessário.
Para este exercício eu resolvi fazer utilizando struct e fazer um menu que interagisse com o usuário, para isso e facilitar na hora de fazer escolhi fazer alguns arquivos separados.
Fila.h
typedef struct item {
int numero;
char nome[30];
struct item *prox;
} Item;
typedef struct fila {
Item *primeiro;
Item *ultimo;
int qtdItens;
} Fila;
Fila *criaFila();
void liberaFila(Fila *f);
int estahVazia(Fila);
void enfileirar(Fila *f, int n, char nm[]);
void desenfileirar(Fila *f, char *nomeDesenfileirado, int *nDesenfileirado);
void mostrarFila(Fila *f);
int quantidadeFila(Fila *f);
void mostrarCaracteristicas(Fila *f);
#include "Fila.cpp"
/*
Escreva um programa que simule o controle de uma pista de decolagem de aviões em um aeroporto. Neste programa, o usuário deve ser capaz de realizar as seguintes tarefas:
*/
// a) Listar o número de aviões aguardando na fila de decolagem;
void quantosAvioesAguardam(Fila *f);
// b) Autorizar a decolagem do primeiro avião da fila;
void autorizarDecolagem(Fila *f);
// c) Adicionar um avião à fila de espera;
void adicionarAviaoFilaDecolagem(Fila *f);
// d) Listar todos os aviões na fila de espera;
void listarAvioesFilaDecolagem(Fila *f);
// e) Listar as características do primeiro avião da fila;
void caracteristicasProximoDecolar(Fila *f);
// Menu interativo para acesso às funções.
int menuAeroporto(Fila *f);
/*
Considere que os aviões possuem um nome e um número inteiro como identificador.
Adicione outras características conforme achar necessário.
*/
Bom... estes são os arquivos, o programa funciona na maioria do tempo, o menu vai e volta tranquilo. O problema é que em alguns momentos ele dá um erro de segmentação que não estou conseguindo resolver, acredito ser relativo a algum ponteiro. E acredito também que o menu pode ser melhorado, se alguém puder dar uma luz, serei muito grato.
Pergunta
renatoemoura
Bom dia/Boa tarde/Boa noite,
Estou com o seguinte exercício utilizando lista:
Escreva um programa que simule o controle de uma pista de decolagem de aviões em um
aeroporto. Neste programa, o usuário deve ser capaz de realizar as seguintes tarefas:
a) Listar o número de aviões aguardando na fila de decolagem;
b) Autorizar a decolagem do primeiro avião da fila;
c) Adicionar um avião à fila de espera;
d) Listar todos os aviões na fila de espera;
e) Listar as características do primeiro avião da fila.
Considere que os aviões possuem um nome e um número inteiro como identificador.
Adicione outras características conforme achar necessário.
Para este exercício eu resolvi fazer utilizando struct e fazer um menu que interagisse com o usuário, para isso e facilitar na hora de fazer escolhi fazer alguns arquivos separados.
Fila.h
Fila.cpp
aeroporto.h
aeroporto.cpp
exFila.cpp
Bom... estes são os arquivos, o programa funciona na maioria do tempo, o menu vai e volta tranquilo. O problema é que em alguns momentos ele dá um erro de segmentação que não estou conseguindo resolver, acredito ser relativo a algum ponteiro. E acredito também que o menu pode ser melhorado, se alguém puder dar uma luz, serei muito grato.
Link para o comentário
Compartilhar em outros sites
7 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.