Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- locacao_locar(void){
- int id_cliente, id_carro,confirmacao_1,confirmacao_2,i,dias,protecao,valor_tarifa;
- FILE * p_carro, * p_cliente, * p_locacao;
- tcarro reg_carro;
- tcliente reg_cliente;
- tlocacao reg_locacao;
- printf("informe o id do cliente\n");
- scanf("%d",&id_cliente);
- p_cliente=fopen("cliente.dat","rb");
- fseek(p_cliente,(id_cliente-1)*sizeof(tcliente),SEEK_SET);
- fread(®_cliente,sizeof(tcliente),1,p_cliente);
- printf("informe o id do carro\n");
- scanf("%d",&id_carro);
- p_carro=fopen("carro.dat","rb");
- fseek(p_carro,(id_carro-1)*sizeof(tcarro),SEEK_SET);
- fread(®_carro,sizeof(tcarro),1,p_carro);
- printf("Informe Por Quantos Dias Deseja Locar o Carro: ");
- scanf("%d",&dias);
- printf("\nDeseja Contratar alguma Proteção?");
- printf("|\n_________________________________|\n");
- printf("| PROTEÇÕES |\n");
- printf("|(1) Gold Basic |\n");
- printf("|(2) Gold Premium |\n");
- printf("|(3) Gold Total |\n");
- printf("|(4) Informação Sobre as Proteções|\n");
- printf("|(0) Não Contratar Proteção |\n");
- printf("|_________________________________|\n");
- printf("Informe Sua Opção: ");
- scanf("%d",&protecao);
- switch(protecao){
- case 4: info_protecao();break;
- case 0: carro_locacao_menu();break;}
- clrscr();
- valor_tarifa= calculo_tarifa(id_carro,dias,protecao);
- //p_locacao = fopen ("locacao.dat","wb+");
- // printf("Valor de id Cliente: %d\nValor de id Carro: %d\n",id_cliente,id_carro);
- printf("Deseja Locar Este Carro (1) SIM / (2) NÃO");
- scanf("%d",&confirmacao_1);
- switch(confirmacao_1){
- case 1: {
- p_locacao = (FILE *) abre_arquivo("locacao.dat");
- if (p_locacao == NULL)
- mensagem("Erro ao criar/abrir arquivo locacao.dat");
- reg_locacao.id_cliente = id_cliente;
- reg_locacao.id = id_carro;
- for(i=0;i<=strlen(reg_carro.nome);i++){
- reg_locacao.nome[i] = reg_carro.nome[i];}
- for(i=0;i<=strlen(reg_carro.marca);i++){
- reg_locacao.marca[i] = reg_carro.marca[i];}
- reg_locacao.dias = dias;
- reg_locacao.protecao = protecao;
- reg_locacao.valor = valor_tarifa;
- reg_locacao.flag = 1;
- fseek(p_locacao, 0, SEEK_END);
- reg_locacao.cod = 1 + ftell(p_locacao) / sizeof(tlocacao);
- printf("\nConfirma a Locação (1)SIM / (2)NÃO: ");
- scanf("%d",&confirmacao_2);
- switch(confirmacao_2){
- case 1:
- fseek(p_locacao, 0L, SEEK_END);
- fwrite(®_locacao, sizeof(tlocacao), 1, p_locacao);
- //printf("id_cliente: %d\nid_carro: %d\nnome_carro: %s\nmarca_carro: %s\ndias: %d\nprotecao: %d\nflag: %d\nvalor: %f\n",reg_locacao.id_cliente,reg_locacao.id_carro,reg_locacao.nome_carro,reg_locacao.marca_carro,reg_locacao.dias,reg_locacao.protecao,reg_locacao.flag,reg_locacao.valor);
- //getch();
- fclose(p_locacao);
- mensagem("Locação Concluída com Sucesso!");break;
- case 2:
- mensagem("Locação Não Confirmada");
- carro_locacao_menu();break;
- default: mensagem("Opção Inválida!");}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement