• Jueves 7 de Noviembre de 2024, 22:47

Autor Tema: [Código Fuente] Que vocal se repite mas  (Leído 1979 veces)

takap

  • Nuevo Miembro
  • *
  • Mensajes: 3
    • Ver Perfil
[Código Fuente] Que vocal se repite mas
« en: Viernes 8 de Junio de 2007, 11:31 »
0
Código: [Seleccionar]
#include
#include
#include

int main(){
     FILE *fori, *fsal;
     int op;
     int vocals[5];
     char car;
     int res=0;
     int tot=0;
     float res2;
     int va=0;
     int ve=0;
     int vi=0;
     int vo=0;
     int vu=0;
     int clau;      
     
   
     
     printf("\nMenu\n1 - Dir quina vocal apareix mes en tot el fitxer\n2 - Dir la frequencia de vocals\n");
     printf("3 - Xifrar el fitxer amb una clau\n4 - Desxifrar el fitxer anterior\n5 - Sortir");
     printf("\n\nIntrodueix opcio:");
     scanf("%d",&op);    
   
       while(op!=5){
        switch(op){
              case 1:
                      if((fori=fopen("fitxer.txt" ,"r"))==NULL){
                           printf("Error al intentar obrir larxiu");
                           return;
                     }                    
                   
                   while (!feof(fori))
                   {  
                  car=fgetc(fori);
                  tot++;
                 
                       if(car=='a') va++;
                       if(car=='e') ve++;
                       if(car=='i') vi++;
                       if(car=='o') vo++;
                       if(car=='u') vu++;
                     
                 
                    }
                     fclose(fori);
                     if(va > ve && va > vi && va> vo && va >vu) printf("La vocal que mes es repeteix es la a");
                     if(ve > va && ve > vi && ve> vo && ve >vu) printf("La vocal que mes es repeteix es la e");
                     if(vi > va && vi > ve && vi> vo && vi >vu) printf("La vocal que mes es repeteix es la i");
                     if(vo > va && vo > ve && vo> vi && vo >vu) printf("La vocal que mes es repeteix es la o");
                     if(vu > va && vu > ve && vu> vi && vu >vo) printf("La vocal que mes es repeteix es la u");
                                        getch();
                    // fprintf(stdout,"%d vocals trobades",cont);
           
                 break;
             
              case 2:
                     if((fori=fopen("fitxer.txt" ,"r"))==NULL){
                           printf("Error al intentar obrir larxiu");
                           return;
                     }                    
                   
                   while (!feof(fori))
                   {  
                  car=fgetc(fori);
                  tot++;
                 
                       if(car=='a') va++;
                       if(car=='e') ve++;
                       if(car=='i') vi++;
                       if(car=='o') vo++;
                       if(car=='u') vu++;
                     
                 
                    }
                 fclose(fori);
                   res=va+ve+vi+vo+vu;
                   res2=(float)res /(float)tot;
                   printf("Frequencia=%d/%d=%f",res,tot,res2);
                   getch();
              break;
              case 3:
                  if((fori=fopen("fitxer.txt" ,"r"))==NULL){
                       printf("Error al intentar obrir larxiu");
                       return;
                  }
                 
                  if((fsal=fopen("sortida.txt" ,"w"))==NULL){
                       printf("Error al intentar obrir larxiu");
                       return;
                  }              
                                     
                  printf("Introdueix la clau 1-9: ");
                  scanf("%d",&clau);
                 
                   while (!feof(fori))
                   {  
                      car=fgetc(fori);
                     
                      if(car!=' ' || car!='\n'){
                               fputc(car+clau,fsal);
                           }
                           else{
                               fputc(car,fsal);
                           }

                    }
                    fclose(fori);                  
                    fclose(fsal);
             
               break;
              case 4:
                  if((fori=fopen("sortida.txt" ,"r"))==NULL){
                       printf("Error al intentar obrir larxiu");
                       return;
                  }
               
                  printf("Introdueix la clau per desxifrar 1-9: ");
                  scanf("%d",&clau);
                 
                   while (!feof(fori))
                   {  
                      car=fgetc(fori);
                     
                      if(car!=' ' || car!='\n'){
                               fprintf(stdout,"%c",car-clau);
                               //fputc(car-clau,fsal);
                           }
                           else{
                               fprintf(stdout,"%c",car);
                           }

                    }
                    fclose(fori);                  
               getch();
              break;
         }      
     system("cls");
     printf("\nMenu\n1 - Dir quina vocal apareix mes en tot el fitxer\n2 - Dir la frequencia de vocals\n");
     printf("3 - Xifrar el fitxer amb una clau\n4 - Desxifrar el fitxer anterior\n5 - Sortir");
     printf("\n\nIntrodueix opcio:");
     scanf("%d",&op);      
     }
   
   
return ;
}

Autor: takap