Unconfigured Ad Widget

Collapse

Anúncio

Collapse
No announcement yet.

Ajuda em Arquivos

Collapse
X
 
  • Filter
  • Tempo
  • Show
Clear All
new posts

  • Font Size
    #1

    C / C++ Ajuda em Arquivos

    Preciso passar esse programa para arquivos mas tenho muita em fazer, não entendi muito sobre essa matéria, se alguém puder me ajudar, me explicar, agradeceria !


    Código:
    #include <stdio.h>
    #include <stdlib.h>
    #include <string.h>
    
    struct vcliente{
           int cod, cama;
           char nome[100], end[200], cpf[20], rg[20], tel[20], cidade[50];
           double somavalor;
           
           }cliente[100];     
           
           
           
    int opc1,p=1;
    int camacasal=39, camasolteiro=61;
    
    void visual();
    double bebidas();
    int consultar(int num);
    double fechardiarias(int num);
    double financeiro();
    int local2();
    double refeicoes();
    int vagasdisponiveis();
    int verificavagas();
    void cadastrar();
    void pesquisarquarto();
    
    void visual(){
    printf("\n000000000000000000000000000000000000000000000000000000000000000000000000000000"
    "\n0________0000_______000___000000__00__________00_______0000_______000__0000000"
    "\n0__000000000__00000__00__0_00000__000000__000000__0000__00__00000__00__0000000"
    "\n0__000000000__00000__00__00_0000__000000__000000__0000__00__00000__00__0000000" 
    "\n0__000000000__00000__00__000_000__000000__000000______0000__00000__00__0000000"
    "\n0__000000000__00000__00__0000_00__000000__000000__00__0000__00000__00__0000000"
    "\n0__000000000__00000__00__00000_0__000000__000000__000__000__00000__00__0000000"
    "\n0________0000_______000__000000___000000__000000__0000__000_______000________0"
    "\n000000000000000000000000000000000000000000000000000000000000000000000000000000"
    "\n\n\t\t\t\tControle de Hotel\n\n");
    }
    
    
    
    int consultar(int num){
        int enco = -1;
        
        for(int q=0;q<100;q++){
                
                if(cliente[q].cod == num){
                                  
                                  enco = q;
                                  q = 100;
                                  }//fim if
                }// FIM FOR
        return(enco);
    }//  FIM CONSULTAR
    
    
    int local2(){// Local disponivel  ou quarto
        
        int enco=-1,p=0;
                for(int i=0;i<100;i++){
                if(cliente[i].cod == -1){
                                       
                                       p=i;
                                       
                                       if(i>0) i=100;
                                       
                                       }//fim if
                                       }//fim for
                                       return(p);
    }//fim local2
    
    
    
    int verificavagas(){//verifica vagas disponiveis
    int enco=-1,p=0;
                for(int i=0;i<100;i++){
                if(cliente[i].cod != -1){
                                       
                                       p+=1;//p=p+1;
                                       }//fim if
                                       }//fim for
                                       return(p);
                                       }//fim verificavagas
     
         
    void cadastrar(void){ //cadastra clientes
    
    system("cls");
    int local=local2();
    int tipocama;
    int cod;
    char nome[100], end[200], cpf[20], rg[20], tel[20], cidade[50];
    
    visual();
    
         if(local!=-1){
                       
                       printf("\n\n---Cadastro de Clientes---");
                       fflush(stdin);
                       
                       printf("\n\nNome: ");
                       fflush(stdin); gets(nome);
                       fflush(stdin);
                       
                       printf("RG: ");
                       fflush(stdin); gets(rg);
                       fflush(stdin); 
                       
                       
                       printf("CPF: ");
                       fflush(stdin); gets(cpf);
                       fflush(stdin);
                       
                       printf("Endereco: ");
                       fflush(stdin);gets(end);
                       fflush(stdin);
                       
                       printf("Telefone: ");
                       fflush(stdin); gets(tel);
                       fflush(stdin);
                       
                       printf("Cidade: ");
                       fflush(stdin); gets(cidade);
                       fflush(stdin);
                       
                       
                       printf("\nEscolha o tipo de quarto");                
                       printf("\n1-Com Cama de Solteiro --> %i disponiveis",camasolteiro);
                       printf("\n2-Com Cama de Casal --> %i disponiveis",camacasal);
                       printf("\nInforme opcao de quarto: ");
                       scanf("%i",&tipocama);
                       
                      
                      printf("\n\nVerificacao de Dados");
                      printf("\nQuarto: %i",p);
                      printf("\nNome: %s",nome);
                      printf("\nRG: %s",rg);
                      printf("\nCPF: %s",cpf);
                      printf("\nTelefone: %s",tel);
                      printf("\nEndereco: %s",end);
                      printf("\nCidade: %s",cidade);
                      if(tipocama==1)printf("\nQuarto com cama solteiro\n");
                      if(tipocama==2)printf("\nQuarto com cama casal\n");
                      
                      printf("\n\nOs dados estao corretos? 1 - Sim ou 2 - Nao ! \n");
                      scanf("%i",&opc1);
                      if(opc1 == 1){
                                strcpy( cliente[local].nome,nome);
                                  strcpy( cliente[local].rg,rg);
                                    strcpy( cliente[local].cpf,cpf);
                                      strcpy( cliente[local].tel,tel);
                                        strcpy( cliente[local].end,end);
                                        strcpy( cliente[local].cidade,cidade);
                                          cliente[local].cod = local;
                                          
                                          if(tipocama==2){
                                                         
                                                         cliente[local].cama=tipocama; 
                                                         camacasal--;
                                                         
                                                         }//fim if 
                                          if(tipocama==1){
                                                          
                                                          cliente[local].cama=tipocama; 
                                                          camasolteiro--;
                                                         
                                                         }//fim if
                                                         
                      
                      
                      }//fim if
                      
                      p++;
                      
                      
                      }//fim if
                      else{
                            printf("Nao ha locais disponiveis no hotel !");
                            
                            }//fim else
                      }//fim cadastrar
      
      
    int vagasdisponiveis(){ //quantas vagas ainda tem
    
    system("cls"); 
    visual();
      
      int verifica;
      int restam;
      
      verifica=verificavagas();
      
      restam=100-verifica;
      
      if(p<100){
                printf("\nAinda Tem %i vagas !\n\n",restam);
                }//fim if
                else{
                      ("\nNao tem vagas !\n\n");
                      }//fim else
                      system("pause");
    }//fim vagasdisponiveis
      
      
    void pesquisarquarto(){ //pesquisa se o cliente ja ta cadastrado
    
    system("cls");
    visual();
         
         int cod =-1;
         fflush(stdin);
         printf("\nInforme Quarto: ");
         scanf("%i",&cod);
         
         cod = consultar(cod);
            
               if(cod > -1){
             
                                             
                                             printf("Nome: %s \n",cliente[cod].nome);
                                             printf("RG: %s \n",cliente[cod].rg);
                                             printf("CPF: %s \n",cliente[cod].cpf);
                                             printf("Endereco: %s\n",cliente[cod].end);
                                             printf("Telefone: %s\n",cliente[cod].tel);
                                             printf("Cidade: %s\n",cliente[cod].cidade);
                                             system("pause");
                 
                 
                 }else{
                       printf("\nHospede nao existe!!!!\n");
                       system("pause");
                       }//fim else
    }//fim pesquisarnome
      
      
    double financeiro(){
        
        system("cls");
        visual();
        
        int opc=-1,opc2,num;
        char buscar;
        
        do{
            fflush(stdin);
            printf("--Financas--\n");
            printf("Informe o numero do Quarto: \n");
            scanf("%i",&num);
    
            num = consultar(num);
            
            if(num == -1){
                   printf("\nHospede nao existe!\n");
                   }//fim if
            
            if(num > -1){
            printf("Nome cliente: %s\n\n",cliente[num].nome);
            printf("1-Fechar diaria\n");
            printf("2-Sair\n");
            scanf("%i",&opc);
          do{
            if(opc == 1){
                  
                       
                       printf("\n1-Para Refeicoes");
                       printf("\n2-Para Bebidas");
                       printf("\n3-Para Finalizar Diaria");
                       printf("\n4-Imprimir total e sai\n");                  
                       scanf("%i",&opc2);
                       
                       if(opc2 == 1)cliente[num].somavalor =  refeicoes();
    
                       if(opc2 == 2)cliente[num].somavalor += bebidas(); 
    
                       if(opc2 == 3)cliente[num].somavalor += fechardiarias(num);
                       
                       if(opc2 == 4){
                               
                               
                               printf("\nValor total Refeicoes + Bebidas + Diaria: %.2lf",cliente[num].somavalor); 
                               
                               cliente[num].cod=-1;
                               if(cliente[num].cama == 2){
                                                         camacasal++;
                                                         }//fim if 1
                               if(cliente[num].cama == 1){
                                                         camasolteiro++;
                                                         }//fim if 2
                               
                                 }//fim if opc==4
                        
                        }//fim if opc==1
                        
                       
                       }while(opc2 != 4);             
                  }// fim if(num > -1){
                            
                              
            printf("\nDeseja pesquisar outro hospede: 1-Sim 0-Nao ");
            scanf("%i",&opc2);
            
                        }//fim do
                        while(opc2!=0);
                        
                        }//fim financeiro
      
                                       
                                       
    double bebidas(){  
        system("cls");
         visual(); 
         
         int opc;
         double pcerveja, prefri, pwiski, pagua, tcerveja, trefri, twiski, tagua;
         int qcerveja, qrefri, qwiski, qagua;
        
         tcerveja= trefri = twiski = tagua = 0;
        
        do{
                  printf("\n\n--Bebidas--\n");
                  printf("1-Cerveja\n");
                  printf("2-Refrigerante\n");
                  printf("3-Wiski\n");
                  printf("4-Agua\n");
                  printf("5-Fechar Bebidas\n");
                  scanf("%i",&opc);
                  
                  switch (opc){
                         case 1:           
                              printf("\nInforme o preco da cerveja: ");
                              scanf("%lf",&pcerveja);
                              printf("\nInforme a quantidade: ");
                              scanf("%i",&qcerveja);
                              tcerveja=pcerveja*qcerveja;
                              printf("\nTotal cerveja %.2lf reais\n\n",tcerveja);
                              break;
                              
                         case 2:
                              printf("\nInforme o preco do refrigerante: ");
                              scanf("%lf",&prefri);
                              printf("\nInforme a quantidade: ");
                              scanf("%i",&qrefri);
                              trefri=prefri*qrefri;
                              printf("\nTotal refrigerante %.2lf reais\n\n",trefri);
                              break;
                              
                         case 3:
                               printf("\nInforme o preco do wiski: ");
                              scanf("%lf",&pwiski);
                              printf("\nInforme a quantidade: ");
                              scanf("%i",&qwiski);
                              twiski=pwiski*qwiski;
                              printf("\nTotal wiski %.2lf reais\n\n",twiski);
                              break;
                             
                         case 4:
                               printf("\nInforme o preco da agua: ");
                              scanf("%lf",&pagua);
                              printf("\nInforme a quantidade: ");
                              scanf("%i",&qagua);
                              tagua=pagua*qagua;
                              printf("\nTotal agua %.2lf reais\n\n",tagua);
                              break;
                              
                         case 5:
                              opc=0;
                              double total = tcerveja + trefri + twiski + tagua;
                              printf("\nTotal gasto com bebidas: %.2lf\n\n",total);
                              
                              return(total);
                              break;
                              
                              }//fim switch
                              }//fim do
                              while(opc!=0);
                              system("pause");
                              }//fim bebidas
                              
                              
                              
                              
    double refeicoes(){
        
        system("cls");
        visual();
        
        int opc3=0;
        int qp1, qp2, qp3; // quantidade prato
        double pp1, pp2, pp3; //preço prato
        double tp1, tp2, tp3; // total prato
        double total;
        
        tp1 = tp2 = tp3 = 0;
        qp1 = qp2 = qp3 = 0;
        tp1 = tp2 = tp3 = 0;
        total = 0;
        
        
        do{
            printf("\n\n--Menu Refeicoes-==");
            printf("\n1-Prato 1");
            printf("\n2-Prato 2");
            printf("\n3-Prato 3");
            printf("\n4-Fechar Refeicoes\n");
            scanf("%i",&opc3);
            
            
            
            switch (opc3){
                        case 1:
                             printf("\nInforme preco do Prato 1: ");
                             scanf("%lf",&pp1);
                             printf("\nInforme quantidade: ");
                             scanf("%i",&qp1);
                             tp1=pp1*qp1;
                             printf("\nTotal Prato 1: %.2lf",tp1); 
                             break;
                             
                        case 2:
                             
                             printf("\nInforme preco do Prato 2: ");
                             scanf("%lf",&pp2);
                             printf("Informe quantidade: ");
                             scanf("%i",&qp2);
                             tp2=pp2*qp2;
                             printf("\nTotal Prato 2: %.2lf",tp2); 
                             break;
                             
                        case 3:
                             
                             printf("\nInforme preco do Prato 3: ");
                             scanf("%lf",&pp3);
                             printf("\nInforme quantidade: ");
                             scanf("%i",&qp3);
                             tp3=pp3*qp3;
                             printf("\nTotal Prato 3: %.2lf",tp3); 
                             break;
                             
                        case 4:
                             total = tp1 + tp2 + tp3;
                             printf("\nTotal Refeicoes: %.2lf reais\n",total);
                             
                             return(total);               
                             break;
                             }//fim switch 
        
        }//fim do
                  while(opc3!=4);
                  
                  
                  }//fim refeicoes
                  
                  
    double fechardiarias(int num){
        system("cls");
        int dias,opc;
        double precodia, totaldiaria;
        
        visual();
           
        num = consultar(num);
        
        printf("%i",num);    
        printf("\nInforme quantos dias de hospedagem : ");
        scanf("%i",&dias);
        printf("Informe o preco da diaria : ");
        scanf("%lf",&precodia);
        totaldiaria=precodia*dias;
        printf("\nO cliente %s: valor diarias= %2.lf\n",cliente[num].nome,totaldiaria);
        return(totaldiaria);
        system("pause");
        
        
    }//fim fechardiarias
                                        
                            
    int main(){
               system("cls");
               int opcao=0;
               int i;
               for(i=0;i<100;i++){
                cliente[i].cod = -1;
                }//fim for
           
           
        do{   
           system("cls");
           system("color 9f");
           visual();
           printf("\t\t(1)-Cadastrar Clientes\n");
           printf("\t\t(2)-Vagas Disponiveis\n");
           printf("\t\t(3)-Financeiro e Fechamento de Diarias\n");
           printf("\t\t(4)-Pesquisa Hospede\n");
           printf("\t\t(0)-Fechar Programa\n");
           printf("\t\tDigite a Opcao: ");
           scanf("%i",&opcao);
           
           
           switch (opcao){
                  case 1:
                         cadastrar();
                         break;
                  
                  case 2:
                         vagasdisponiveis();
                         break;
                        
                  case 3:
                         financeiro();
                         break;
                         
                  case 4:
                         pesquisarquarto();
                      
                         break;
                      
                  case 0:
                         break;    
                       
                  default :
                          printf("NAO TEM");
                           break;  
                             }//fim swicth
           }//fim do
           while(opcao!=0);
    
    }//fim main
X
Working...
X