Você está na página 1de 4

Centro Federal de Educação Tecnológica de Minas Gerais Departamento de Computação

Trabalho prático - 20 pontos


Data limite de entrega: 30 de agosto de 2021 (SIGAA disciplina prática)
Data da apresentação: 31 de agosto de 2021 (Teams disciplina teórica)

Objetivo: Deverá ser desenvolvido um programa em C para cadastro e controle de vendas de


passagens aéreas.

Regras:

• Não é permitido fazer o trabalho de forma individual;

• Deve ser desenvolvido em grupo de até 6 alunos(as), mantendo no máximo 3 grupos;

• Preencha a seguinte planilha no Google Docs com o nome de cada componente:


https://docs.google.com/spreadsheets/d/1u551N2j_Z-3dgDFQfTq7H1T54XrAV1zxGWecZEn5Fpg/edit?usp=sharing

• Os(as) alunos(as) não precisam estar matriculados(as) na mesma turma de laboratório;

• Não serão aceitos trabalhos atrasados;

• Não serão aceitos trabalhos enviados por e-mail;

• Cópias, de qualquer natureza, serão penalizadas com nota zero.

Entrega: Apenas um dos componentes do grupo deverá submeter no SIGAA da disciplina de


laboratório um arquivo .zip contendo o arquivo ”Aeroporto.c”. Não esqueça de informar os
nomes de todos os componentes do grupo.

Critérios de avaliação:

• O código deve conter os comentários que padronizamos ao longo da disciplina;

– Cabeçalho com as informações sobre os autores, versão, data, etc;


– Explicar o que é feito em cada parte do código;
– Explicação sobre o retorno de cada função.

• Legibilidade do código;

• Interface;

• O desvio incondicional com ”goto” não será aceito;

• Apresentação do programa

– O formato de apresentação é livre;


– Durante a apresentação é indispensável demonstrar o programa funcionando;
– Um(a) aluno(a) será sorteado(a) no dia 31/08 para apresentar o trabalho;
– Será avaliado o entendimento individual dos componentes do grupo durante a fase
de perguntas.

PCI (2ECOM.001) - Graduação em Eng. de Computação, Profa. Amália Vasconcelos 1


Centro Federal de Educação Tecnológica de Minas Gerais Departamento de Computação

Roteiro:

Deverá ser desenvolvido pelo grupo, um programa para cadastro e controle de vendas de
passagens aéreas. Para isso, o programa deverá ser constituı́do de três partes:

1. Voos:

• Identificador;
• Número da aeronave;
• Empresa;
• Origem;
• Destino;
• Data da partida;
• Horário de partida;
• Quantidade de passageiros na aeronave.

2. Passageiros:

• Identificador;
• Nome;
• Identidade;
• CPF;
• Endereço (completo);
• Telefone;
• Sexo.

3. Passagens:

• Número;
• Identificador do passageiro;
• Identificador do voo;
• Número poltrona;
• Valor;
• Data da venda.

O programa deve ter uma estrutura que seja capaz de armazenar até:

• 100 voos;

• 1000 passageiros;

• 1000 passagens.

PCI (2ECOM.001) - Graduação em Eng. de Computação, Profa. Amália Vasconcelos 2


Centro Federal de Educação Tecnológica de Minas Gerais Departamento de Computação

Todas as variáveis criadas para armazenar os dados de cada um dos itens do menu principal,
apresentado a seguir, deverão ser agrupadas em registros (struct em linguagem C).

O programa deve possuir um menu principal, de forma que o usuário possa passar de uma
tela para outra sem sair do programa. O menu principal deverá ter uma opção de saı́da do
programa e seguir o modelo:

1 – Voos
2 – Passageiros
3 – Passagens
4 – Sair
Escolha uma opção:

Todas as opções do menu principal, com exceção do item 4, deverão possuir o seguinte sub-
menu:

1. Inclusão

• Ao escolher esta opção deverá ser mostrado ao usuário os campos para preenchi-
mento dos dados. A posição onde os dados ficarão na estrutura de armazenamento
(vetor ou matriz) deverá ser obtida automaticamente pelo programa.

2. Alteração

• Deverá solicitar ao usuário o número da posição do registro a ser alterado;


• A tela de alteração deverá dar a possibilidade do usuário ver os valores já cadastra-
dos para um determinado registro, para que seja possı́vel alterá-lo.

3. Exclusão

• Deverá solicitar ao usuário o número da posição do registro a ser excluı́do;


• Antes de excluir um registro, deverá ser emitida uma mensagem de confirmação
da operação. Caso o usuário confirme a operação, o registro será apagado. Caso
contrário, o registro não será apagado.

4. Consulta

• Deverá solicitar ao usuário o número da posição do registro a ser consultado;


• Deverá mostrar os dados cadastrados para um determinado registro escolhido pelo
usuário do programa.

5. Relatório

• Esta opção deverá imprimir todos os registros cadastrados pelo usuário do pro-
grama.

6. Voltar ao menu principal

• Esta opção remete o usuário ao menu principal.

PCI (2ECOM.001) - Graduação em Eng. de Computação, Profa. Amália Vasconcelos 3


Centro Federal de Educação Tecnológica de Minas Gerais Departamento de Computação

Como o programa deverá funcionar:


• Ao executar o programa o usuário vai escolher qual área pretende acessar (voos, pas-
sageiros ou passagens);
• Escolhida a área, o usuário será direcionado para o submenu para escolher uma das
opções (inclusão, alteração, exclusão, consulta, relatório ou voltar ao menu principal);
• Escolhido o que fazer, deverá ser mostrada ao usuário a tela de acordo com a operação
desejada;
• Após realizada a operação desejada, o usuário deverá ser remetido novamente ao sub-
menu;
• O usuário do programa poderá navegar entre os menus existentes sem a obrigação de
efetuar qualquer operação;
• O programa não deverá imprimir posições vazias do vetor/matriz;
• O usuário só poderá finalizar o programa acessando a opção ”Sair” do menu principal;
• O programa deverá incluir um novo registro na primeira posição vazia do vetor/matriz;
• O programa deverá verificar o número de passageiros em um determinado voo, de
acordo com o valor do campo ”quantidade de passageiros na aeronave”, não deixando
que sejam adicionados passageiros além da capacidade cadastrada;
• O programa não poderá permitir que um mesmo passageiro esteja associado a dois voos
na mesma data e no mesmo horário de partida;
• O programa não poderá permitir que sejam cadastradas duas ou mais passagens com
os mesmos identificador do passageiro e identificador de voo. Afinal de contas, um
passageiro não pode estar duas ou mais vezes no mesmo voo;
• O programa não deverá permitir que um voo seja excluı́do casa haja passagens vendidas
para aquele voo;
• O programa não deverá permitir que um passageiro seja excluı́do caso existam passagens
vendidas para aquele passageiro;
• O usuário do programa só poderá cadastrar uma ”passagem” se um ”passageiro” e um
”voo” estiverem previamente cadastrados, pois, esses dados fazem parte da ”passagem”.
Dicas:
• Fazer o uso de funções no programa. Onde e quando utilizá-las será uma decisão do
grupo;
• Para armazenar itens na memória o grupo deverá utilizar estruturas de vetores ou ma-
trizes;
• Para os campos de data, utilizar o tipo ”char” com 11 posições;
• Para os campos identificadores utilizar o tipo ”int”;
• Para integrar as telas usar uma estrutura de menu (switch case) dentro de um loop (while,
for ou do...while);
• Para excluir um registro basta ”zerar” seus campos.

PCI (2ECOM.001) - Graduação em Eng. de Computação, Profa. Amália Vasconcelos 4

Você também pode gostar