Need a unique gift idea?
A Pastebin account makes a great Christmas gift
SHARE
TWEET

characters frequency counter

a guest Jan 11th, 2014 64 Never
Upgrade to PRO!
ENDING IN00days00hours00mins00secs
 
  1. /********************************************************************************
  2. *       in questa versione del programma non salviamo il file di                *
  3. *       di input ma prendiamo un carattere alla volta. controlliamo             *
  4. *       che questo sia valido, se non è una lettera lo scartiamo, se           *
  5. *       è EOF il contatore termina.                                            *
  6. ********************************************************************************/
  7. #include <stdio.h>
  8. #define CHAR 26
  9. #define NOTACHAR 27
  10.  
  11. int chartonum(char ch)
  12. {      
  13.         if (ch>='a' && ch <= 'z')
  14.                 return ch - 'a';
  15.         if (ch >= 'A' && ch <= 'Z')
  16.                 return ch - 'A';
  17.         return NOTACHAR;
  18. }
  19.  
  20.  
  21. int main(void)
  22. {
  23.         int ch; float conta=0; long counter[CHAR];
  24.  
  25.         for(ch=0;ch<26;ch++) counter[ch] = 0;  
  26.  
  27.         while ((ch=getchar()) != EOF)
  28.         {
  29.                 if ((ch = chartonum(ch)) <= 25 && ch >= 0)
  30.                         counter[ch]++, conta++;
  31.         }
  32.        
  33.         for(ch=0;ch<26;ch++)
  34.         printf("%c appears %ld times : %.2f%%\n", ch + 'A', counter[ch], ((float)counter[ch])/conta*100);
  35. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top