Ae pessoal, eu sou novo nessa área de C e tenho que terminar um trabalho p/ faculdade... alguém pode me ajudar a terminar isso? esse é o trabalho: OBJETIVO DO TRABALHO: Aplicar os conhecimentos, até o momento, adquiridos na disciplina Programação II no desenvolvimento de um software para tratar o problema de vendas de passagens dos vôos da companhia aérea Voe Tranqüilo, utilizando a linguagem de programação C. PROBLEMA A SER RESOLVIDO: A empresa controla os seus 15 vôos manipulando as seguintes informações: código do vôo, horário de embarque, cidade de origem, cidade de destino, nº total de assentos, preço da passagem e nº de assentos vendidos. Você fará o software usado no balcão de atendimento da empresa. Este será usado para a consulta aos dados referentes aos vôos disponíveis e venda de passagens. Este programa ainda não será funcional, uma vez que vocês estão ainda começando a programar e conhecem um número restrito de recursos de programação. Neste sentido usaremos apenas os recursos com os quais vocês já têm familiaridade. Assim, os dados dos 10 vôos mantidos pela companhia são armazenados em 5 vetores, como abaixo: Código do vôo Horário de Embarque Cidade de Origem Cidade de Destino Nº total de assentos Preço da passagem Nº assentos vendidos Desenvolva um programa que controle as seguintes operações para a companhia aérea. O programa deve realizar no mínimo as seguintes operações: 1. Cadastrar (sem repetição de código) os diversos vôos (suponha a princípio que existam no máximo 15 vôos). · Os 7 vetores funcionarão como a base de dados do seu programa. Assim a primeira tarefa do programa será preenchê-los. · Ao preencher os vetores atende para: o Os 7 vetores serão totalmente preenchidos ao iniciar o programa. o O número do vôo não deve se repetir no vetor referente a este dado. o O horário de embarque deve ser um float, com a parte inteira indicando a hora e as duas casas decimais indicando os minutos do embarque. o O número total de assentos deve ser um inteiro maior que zero. o O preço da passagem deve ser um float maior que zero. o O número de assentos vendidos deve ser um inteiro inicialmente igual a zero. o As cidades de origem e destino devem ser valores inteiros no intervalo [1,9], conforme tabela abaixo: Código Cidade 1 Vitória 2 São Paulo 3 Rio de Janeiro 4 Belo Horizonte 5 Salvador 6 Brasília 7 Florianópolis 8 Curitiba 9 Porto Alegre 2. Atualizar os dados de um vôo, localizando-o através de seu código. A localização deve ser feita usando o método de Pesquisa Seqüencial. A menos do código do vôo, todos os demais dados podem ser alterados, observando contudo as mesmas consistências feitas durante o preenchimento inicial. 3. Ler os códigos das cidades de origem e destino e imprimir quais os códigos de vôos disponíveis com suas respectivas ofertas de assentos (capacidade – assentos vendidos). 4. Imprimir os dados, ordenados por código, de todos os vôos disponíveis. O método da Bolha deve ser usado para realizar a ordenação. O formato do relatório é mostrado no exemplo abaixo, observe que este traz os nomes das cidades, não os códigos. Código Origem Destino Embarque Valor Total assentos disponíveis 1002 Vitória Salvador 8h30 R$ 250,00 10 2001 Vitória Brasília 10h20 R$ 350,00 0 4005 Salvador Curitiba 11h00 R$ 520,00 20 Para impressão do horário de embarque no formato acima segue, como sugestão, o seguinte código: float x=1.45; int h = (int) x; int m = x*100-100; printf("%dh%d\n", h, m); 5. Imprimir os dados, ordenados por código, de todos os vôos disponíveis para uma cidade de origem específica. O método da Bolha deve ser usado para realizar a ordenação. O formato do relatório é mostrado no exemplo abaixo: Código Destino Embarque Valor Total assentos disponíveis 1002 Salvador 8h30 R$ 250,00 10 2001 Brasília 10h20 R$ 350,00 0 6. Imprimir os dados, ordenados por código, de todos os vôos disponíveis para uma cidade de destino específica. O método da Bolha deve ser usado para realizar a ordenação. O formato do relatório é mostrado no exemplo abaixo: Código Origem Embarque Valor Total assentos disponíveis 4005 Salvador 11h00 R$ 520,00 20 7. Realizar uma venda, localizando o vôo através do código. A localização deve ser feita usando o método de Pesquisa Seqüencial. Durante uma tentativa de compra o passageiro informa o número do vôo desejado. Para cada tentativa de atendimento ao passageiro verifique se há disponibilidade no vôo solicitado. Em caso negativo, imprima “VÔO LOTADO”. Em caso afirmativo, leia o número de identidade do passageiro, atualize o número de assentos vendidos e imprima um protocolo de embarque contendo: · O número de identidade do passageiro. · O número do vôo desejado. · O preço da passagem. · As cidades de origem e destino. · O horário de embarque. FORMA E REGRAS PARA APRESENTAÇÃO DO TRABALHO: · O programa devidamente comentado e identado qualquer dúvida o trabalho está na íntegra no site https://docentes.uvv.br/arquivosBlog/Elizab...D6A3A244666.doc e esse é o meu programa: # include <stdio.h> # include <stdlib.h> # define N 3 int Pesquisa (int cod, int numero) //numero é um vetor de inteiros { int Achou = 0; i = 0; //variavel global - para saber em qual posição do vetor está o código procurado do { if (cod = numero) Achou = 1; else i++; } while((Achou == 0) || (i <= N)); if (Achou == 1) return 1; else return 0; } void Ordena (int x, int voo[N], float hora[N], int origem[N], int destino[N], int lug_total[N], float preço[N], int lug_vendido[N]) { int troca, tam, aux_voo, aux_origem, aux_destino, aux_lug_total, aux_lug_vendido; float aux_hora, aux_preco; troca = 1; tam = x - 1; while (troca = 1) { troca = 0; for (i=0, i<=tam; x++) { if (voo > voo[i+1]) { aux_voo = voo; voo = voo[i+1]; voo[i+1] = aux_voo; aux_hora = hora; hora = hora[i+1]; hora[i+1] = aux_hora; aux_origem = origem; origem = origem[i+1]; origem[i+1] = aux_origem; aux_destino = destino; destino = destino[i+1]; destino[i+1] = aux_destino; aux_lug_total = lug_total; lug_total = lug_total[i+1]; lug_total[i+1] = aux_lug_total; aux_preco = preço; preço = preço[i+1]; preço[i+1] = aux_preco; aux_lug_vendido = lug_vendido; lug_vendido = lug_vendido[i+1]; lug_vendido[i+1] = aux_lug_vendido; troca = 1; } } tam--; } } void Cadastro (int x, float hora[N], char origem[N], char destino[N], int lug_total[N], float preço[N], int lug_vendido[N]) { // y variável de pesquisa int achou = cont_voo = op = 0; // É necessário a criação da variável x como sendo uma variável estática x = -1; // para poder incremendar 1 ao seu valor logo quando entra na rotina de cadastro // rotina de preencimento inicial dos vetores do { printf ("Informe o horario de embarque: "); scanf ("\n %f", &hora[x]); do { printf("Cidade de origem\n\n"); printf("1 - Vitoria\n"); printf("2 - são Paulo\n"); printf("3 - Rio de Janeiro\n"); printf("4 - Belo Horizonte\n"); printf("5 - Salvador\n"); printf("6 - Brasilia\n"); printf("7 - Florianopolis\n"); printf("8 - Curitiba\n"); printf("9 - Porto Alegre\n\n"); printf("Digite o numero da cidade de origem: "); scanf("%d",&origem[x]); } while ((origem[x]<1) || (origem[x]>9)); do { printf("\n\nCidade de destino\n\n"); printf("1 - Vitoria\n"); printf("2 - são Paulo\n"); printf("3 - Rio de Janeiro\n"); printf("4 - Belo Horizonte\n"); printf("5 - Salvador\n"); printf("6 - Brasilia\n"); printf("7 - Florianopolis\n"); printf("8 - Curitiba\n"); printf("9 - Porto Alegre\n\n"); printf("Digite o numero da cidade de destino: "); scanf("%d",&destino[x]); } while ((destino[x]<1) || (destino[x]>9)); do { printf ("Numero total de lugares no aviao: "); scanf ("\n %d", &lug_total[x]); } while (lug_total[x] < 0); do { printf ("Informe o preço da passagem: R$ "); scanf ("\n %f", &preço[x]); } while (preço[x] <= 0); //acrescendo 1 ao numero de lugares vendidos lug_vendido[x] = lug_vendido[x] + 1; do { printf("Deseja continuar o cadastramento? (1 - Sim / 2 - não): "); scanf("%d",&op); } while ((op != 1) && (op != 2)); } while (op = 1); //fim da rotina de preenchimento inicial dos vetores } main () { int voo[N], origem[N], destino[N], lug_total[N], lug_vendido[N], i = 0, voo_aux, , x, y, z, w, k, achou, op, cont_voo, rg, i_maior, i_menor, nenhum_abaixo_med; float preço[N]; int x = -1; // y variável de pesquisa achou = cont_voo = 0; //cadastramento das passagens do { printf ("\n\n\nOpcoes: \n"); printf ("1 -> Cadastrar. \n"); printf ("2 -> Alterar dados. \n"); printf ("3 -> Disponibilidade de voo. \n"); printf ("4 -> Pesquisa de voos. \n"); printf ("5 -> Listagem geral dos voos. \n"); printf ("6 -> Listagem dos voos para uma cidade de origem. \n"); printf ("7 -> Listagem dos voos para uma cidade de destino. \n"); printf ("8 -> Venda. \n"); printf ("9 -> Sair. \n\n"); printf ("Opcao: "); scanf ("%d", &op); switch (op) { //impressão do protocolo case 1: if (x > N) //verificando se chegou no limite de cadastramento do vetor { printf("\nLimite de cadastramento de voos.\n\n"); } else { // do // { x++; //cadastramento voo do { printf ("\n\nDigite o n.o do %do voo: ", (x + 1)); scanf ("%d", &voo_aux); if (Pesquisa(voo_aux, voo[x]) == 1) { printf ("Voo já cadastrado!!! \n\n"); } else { voo[x] = voo_aux; achou = 0; } //fim consulta } while (achou == 1); Cadastro(x, hora, origem, destino, lug_total, preço, lug_vendido); //a referência, aqui, tem que jogar o conteúdo desses vetores } break; //alteração de dados case 2: do { printf ("\n\nDigite o n.o do %do voo: "); scanf ("%d", &voo_aux); if (Pesquisa(voo_aux, voo) == 0) //vetor dos voos { printf ("Voo não cadastrado!!! \n\n"); } else { Cadastro(i, hora, origem, destino, lug_total, preço, lug_vendido); //a referência, aqui, tem que jogar o conteúdo desses vetores achou = 0; } //fim consulta } while (achou == 1); break; //disponibilidade de voos case 3: int origem, destino, y = 0; printf("Digite o numero da cidade de origem: "); scanf("%d",&origem); printf("Digite o numero da cidade de destino: "); scanf("%d",&destino); printf("Numero do voo /t Capacidade /t Assentos vendidos"); //PRA FAZER A TABULAÇÃO, É /t MESMO?!?!? do { if ((origem == origem[y]) && (destino == destino[y])) { prinft("%d /t %d /t %d", voo[y], lug_total[y], lug_vendido[y]); } else { y++; } } while (y <= N); break; //pesquisa de voos case 4: //sair system ("PAUSE"); } como vocês podem ver ainda faltam uns 4 cases e algumas funções, tem como alguém me ajudar a terminar isso? to precisando p/ hj até às 20h vlw galera