/* letter frequency counter Maiko Teramoto Oct 12, 1999 */ #include main () { int a, b, c, d, e, f, g, h, i, j, k, l, m ; int n, o, p, q, r, s, t, u, v, w, x, y, z ; int cc ; int count = 0 ; a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0, i = 0, j = 0, k = 0, l = 0, m = 0 ; n = 0, o = 0, p = 0, q = 0, r = 0, s = 0, t = 0, u = 0, v = 0, w = 0, x = 0, y = 0, z = 0 ; while ( ( cc = getchar() ) != EOF ) { if ( ( cc == 'A') || ( cc == 'a') ) a++ ; else if ( ( cc == 'B' ) || ( cc == 'b' ) ) b++ ; else if ( ( cc == 'C' ) || ( cc == 'c' ) ) c++ ; else if ( ( cc == 'D' ) || ( cc == 'd' ) ) d++ ; else if ( ( cc == 'E' ) || ( cc == 'e' ) ) e++ ; else if ( ( cc == 'F' ) || ( cc == 'f' ) ) f++ ; else if ( ( cc == 'G' ) || ( cc == 'g' ) ) g++ ; else if ( ( cc == 'H' ) || ( cc == 'h' ) ) h++ ; else if ( ( cc == 'I' ) || ( cc == 'i' ) ) i++ ; else if ( ( cc == 'J' ) || ( cc == 'j' ) ) j++ ; else if ( ( cc == 'K' ) || ( cc == 'k' ) ) k++ ; else if ( ( cc == 'L' ) || ( cc == 'l' ) ) l++ ; else if ( ( cc == 'M' ) || ( cc == 'm' ) ) m++ ; else if ( ( cc == 'N' ) || ( cc == 'n' ) ) n++ ; else if ( ( cc == 'O' ) || ( cc == 'o' ) ) o++ ; else if ( ( cc == 'P' ) || ( cc == 'p' ) ) p++ ; else if ( ( cc == 'Q' ) || ( cc == 'q' ) ) q++ ; else if ( ( cc == 'R' ) || ( cc == 'r' ) ) r++ ; else if ( ( cc == 'S' ) || ( cc == 's' ) ) s++ ; else if ( ( cc == 'T' ) || ( cc == 't' ) ) t++ ; else if ( ( cc == 'U' ) || ( cc == 'u' ) ) u++ ; else if ( ( cc == 'V' ) || ( cc == 'v' ) ) v++ ; else if ( ( cc == 'W' ) || ( cc == 'w' ) ) w++ ; else if ( ( cc == 'X' ) || ( cc == 'x' ) ) x++ ; else if ( ( cc == 'Y' ) || ( cc == 'y' ) ) y++ ; else if ( ( cc == 'Z' ) || ( cc == 'z' ) ) z++ ; if ( ( cc >= 'A' ) && ( cc <= 'Z' ) || ( cc >= 'a' ) && ( cc <= 'z' ) ) count ++ ; } /*while*/ printf( "%d letters counted in total.\n" , count ) ; printf( "a %.2f %\n" , 100.0 * (float)a / (float)count ) ; printf( "b %.2f %\n" , 100.0 * (float)b / (float)count ) ; printf( "c %.2f %\n" , 100.0 * (float)c / (float)count ) ; printf( "d %.2f %\n" , 100.0 * (float)d / (float)count ) ; printf( "e %.2f %\n" , 100.0 * (float)e / (float)count ) ; printf( "f %.2f %\n" , 100.0 * (float)f / (float)count ) ; printf( "g %.2f %\n" , 100.0 * (float)g / (float)count ) ; printf( "h %.2f %\n" , 100.0 * (float)h / (float)count ) ; printf( "i %.2f %\n" , 100.0 * (float)i / (float)count ) ; printf( "j %.2f %\n" , 100.0 * (float)j / (float)count ) ; printf( "k %.2f %\n" , 100.0 * (float)k / (float)count ) ; printf( "l %.2f %\n" , 100.0 * (float)l / (float)count ) ; printf( "m %.2f %\n" , 100.0 * (float)m / (float)count ) ; printf( "n %.2f %\n" , 100.0 * (float)n / (float)count ) ; printf( "o %.2f %\n" , 100.0 * (float)o / (float)count ) ; printf( "p %.2f %\n" , 100.0 * (float)p / (float)count ) ; printf( "q %.2f %\n" , 100.0 * (float)q / (float)count ) ; printf( "r %.2f %\n" , 100.0 * (float)r / (float)count ) ; printf( "s %.2f %\n" , 100.0 * (float)s / (float)count ) ; printf( "t %.2f %\n" , 100.0 * (float)t / (float)count ) ; printf( "u %.2f %\n" , 100.0 * (float)u / (float)count ) ; printf( "v %.2f %\n" , 100.0 * (float)v / (float)count ) ; printf( "w %.2f %\n" , 100.0 * (float)w / (float)count ) ; printf( "x %.2f %\n" , 100.0 * (float)x / (float)count ) ; printf( "y %.2f %\n" , 100.0 * (float)y / (float)count ) ; printf( "z %.2f %\n" , 100.0 * (float)z / (float)count ) ; } /*end of main()*/