Ir ao conteúdo
  • Cadastre-se

Tayron Leigh

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

Reputação

0
  1. Eu desenvolvi esse pequeno sistema mais estou com dificuldade na parte if(op==3) { pois não aparece a compra da passagem finalizada o resto ta dando certo o cadastro , e cadastro de viagem Segue o Código ! quem puder dar uma olhada ou me ajudar agradeço !!! #include<stdio.h> #include <string.h> #include <stdlib.h> #include <ctype.h> #include <conio.h> struct Rodoviaria { int codigo; int horapartida; int preco; int poltrona[44]; char destinoviagem[100]; char nomepassager[100]; char endereco[20]; char cpf[28]; char rg[16]; char tel[12]; char idade[100]; }; //função gravar void gravar(struct Rodoviaria a[1000],int fim) { FILE *arq; int teste,i; arq = fopen("arquivo.txt","wb"); // w = cria arquivo, b = modo binario if(arq != NULL) { for(i=0;i<fim;i++) { teste = fwrite(&a,sizeof(struct Rodoviaria),1,arq); if (teste !=1) // retorna 1 gravou e 0 senao gravou { printf("erro ao salvar"); getch(); } } fclose(arq); } else { printf("erro ao abrir arquivo"); } } //função carregar int carregar(struct Rodoviaria a[1000]) // abre arquivo e carrega no vetor { FILE *arq; int teste,percorre=0; struct Rodoviaria registro; arq = fopen("arquivo.txt","rb"); if(arq != NULL) { while (!feof(arq)) // diferente do fim do arquivo? { teste = fread(&registro,sizeof(struct Rodoviaria),1,arq); if (teste ==1) // se conseguiu ler { a[percorre] = registro; percorre++; } } fclose(arq); } return percorre; } int main () { struct Rodoviaria vet[1000]; int ultimo=0, op=0,i,j,x,codonibus=0,qtd=0,onibus[100]; char nomedestino[100]; //carrega vetor for (i=0;i<44;i++) { qtd++; onibus = qtd; } while(op !=4) { ultimo = carregar(vet); //abre arquivo e carrega para o vetor printf ("======================================MENU======================================\n"); printf ("1 - Cadastrar passageiro :\n"); printf ("3 - Cadastrar viagem :\n"); printf ("3 - Comprar passagem :\n"); printf ("4 - Listar Lista de passageiros :\n"); printf ("5 - Sair :\n\n"); fflush (stdin); scanf ("%d",&op); fflush (stdin); if(op==1) { printf("Digite o Nome do Passageiro:"); scanf ("%d",&vet[ultimo].codigo); fflush(stdin); fgets (vet[ultimo].nomepassager,100,stdin); printf("Digite o Endereco:"); fflush(stdin); fgets(vet[ultimo].endereco,20,stdin); printf("Digite o Telefone:"); fflush(stdin); fgets(vet[ultimo].tel,12,stdin); printf("Digite o CPF:"); fflush(stdin); fgets(vet[ultimo].cpf,28,stdin); printf("Digite o RG:"); fflush(stdin); fgets(vet[ultimo].rg,16,stdin); printf("Digite a Idade:"); fflush(stdin); fgets(vet[ultimo].idade,100,stdin); ultimo++; gravar(vet,ultimo); //função para gravar vetor no arquivo .txt onibus = vet[ultimo].codigo; printf("\n"); printf("Cadastro Realizado com sucesso !\n\n"); system("pause"); } if(op==2) printf("Informe Codigo do Onibus:"); scanf ("%d",&vet[ultimo].codigo); printf("Informe Destino de Viagem :"); fflush(stdin); fgets (vet[ultimo].destinoviagem,100,stdin); fflush(stdin); printf("Informe Horario de Partida da Viagem:"); scanf ("%d",&vet[ultimo].horapartida); ultimo++; gravar(vet,ultimo); //função para gravar vetor no arquivo .txt onibus = vet[ultimo].codigo; printf("\n"); printf("Cadastro Realizado com sucesso !\n\n"); system("pause"); if(op==3) { printf("Informe Destino de Viagem :"); fflush(stdin); fgets(nomedestino,100,stdin); fflush(stdin); ultimo++; gravar(vet,ultimo); //função para carregar vetor no arquivo .txt onibus = vet[ultimo].codigo; printf("\n"); for(i=0;i<ultimo;i++) { x = strcmp(vet.destinoviagem,nomedestino); if (x == 0) { printf ("=======================\n"); printf("Codigo do Onibus :%d\n",vet.codigo); printf("Horario de Partida :%d\n",vet.horapartida); printf("\n"); } } printf("Informe o codigo do onibus desejado:"); scanf("%d",&codonibus); for(i=0;i<ultimo;i++) // laço no arquivo { if(vet.codigo == codonibus) // se codigo do arquivo == codigo digitado { printf("\n"); for(i=0;i<44;i++) {} } } printf("\n"); system("pause"); } } }
  2. Boa tarde , pessoal sou novo aqui , é também na area em C me pediram para fazer um exercicio de sistema de venda de passagem de acordo fui fazendo no que aprendi mais to com um probleminha na hora que eu quero comprar a passagem não consigo mostrar os dados na tela tipo ex: nome , destino , horario , poltrona(não pode repetir) simplesmente não aparece nada , e ainda falta colocar as tarifas de 100% gratis para idosos e 50% para estudantes ... e depois disso tudo tera que mostrar na tela o vulgo nome , destino , horario , preço , tarifa (100% ou 50%) e exibir o total de arrecadação por dia meu codigo e esse fui montando por parte ! se puderem me ajudar agradeço a vocês #include<stdio.h> #define SIZE 200 char nome [50];//Nome char endereco[50];//Endereço char destino [20];//Destino da Viagem int cpf;//CPF int hr;//Hora da Viagem int rg;//RG int poltdisp;// Poltronas int vet[44]; // Numero de Poltronas int tel;//Telefone int idade;//Idade int prc;//Preço int op; void CadastrarDestino(); void CadastroClientes(); void ComprarPassagem(); void CadastrarViagem(); void Pesquisa(); void Lugares(); int main (void){ do{ system("cls"); printf("\n----Menu----\n1 - Cadastrar Clientes\n2 - Cadastrar Viagem\n3 - Comprar Passagem\n4 - Listar Poltrona\n5 -Sair"); scanf("%d",&op); switch(op){ case 1: CadastroClientes(); break; case 2: CadastrarViagem(); break; case 3: ComprarPassagem(); break; case 4: Lugares(); break; case 5: system("exit"); break; default: printf("Opcao Invalida"); break; } }while(op!=5); } void Lugares(){ int i; for(i=0;i<44;i++) poltdisp = (44- vet); printf("Poltornas disponiveis %d",poltdisp); } void CadastroClientes(){ static int linha; do{ printf("\nDigite o nome:"); scanf("%s",&nome[linha]); printf("\nDigite o endereco:"); scanf("%s",&endereco[linha]); printf("\nDigite a idade:"); scanf("%d",&idade[linha]); printf("\nDigite o cpf:"); scanf("%d",&cpf[linha]); printf("\nDigite o RG:"); scanf("%d",&rg[linha]); printf("\nDigite o telefone"); scanf("%d",&tel[linha]); printf("\nDigite 1 para continuar ou outro valor para sair"); scanf("%d",&op); linha++; }while(op==1); }//fim da função cadastro void CadastrarViagem(){ static int linha; printf("\nDigite o destino:"); scanf("%s",&destino[linha]); printf("\nDigite o horario:"); scanf("%d",&hr[linha]); printf("\nDigite o numero da poltrona:"); scanf("%d",&poltdisp); printf("\nDigite 1 para continuar ou outro valor para sair"); scanf("%d",&op); linha++; } void ComprarPassagem(){ int i; for(i=0;i<SIZE;i++){ if(destino>0){ printf("Essa foi a passagem %d",vet); }else{ break; } void Pesquisa(){ int cpfPesquisa; char enderecoPesquisa[50]; int idadePesquisa; int i; do{ printf("\nDigite 1 para pesquisar por CPF ou 2 para pesquisar por endereço "); scanf("%d",&op); switch(op){ case 1: printf("\nDigite o CPF:"); scanf("%d", &cpfPesquisa); for(i=0;i<SIZE;i++){ if(cpf==cpfPesquisa){ printf("\nNome: %s\nEndereco: %s\nCPF: %d \nIdade %d",nome,endereco,cpf,idade); } } break; case 2: printf("\nDigite o Endereco"); scanf("%s", enderecoPesquisa); for(i=0;i<SIZE;i++){ if(strcmp(endereco, enderecoPesquisa)==0){ printf("\nNome: %s\nEndereco: %s\nCPF: %d \nIdade %d", nome,endereco,cpf,idade); } } break; default: printf("\nOpcao invalida"); break; } printf("\nDigite 1 para continuar pesquisando"); scanf("%d", &op); }while(op==1); } } }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...