Uses Dos , Crt ;

Var Souhrna_ascii_hodnota : Longint ;
    Pocet_znaku : Word ;
    Cetnost_znaku : Array[0..255] Of Word ;
    F : File Of Byte ;
    Testovany_znak : Byte ;
    Prumerna_hodnota : Byte ;
    I : Byte ;
    Nejcasteji_pouzity_znak : Byte ;


Begin
     Assign ( F , Paramstr ( 1 ) ) ;
     {I-}
     Reset ( F ) ;
     Close ( F ) ;
     {I+}
     IF IOResult <> 0 Then
        Begin
             Writeln ( 'Nezadal''s parametr - zkoumany textovy soubor' ) ;
             Writeln ( 'nebo tento soubor neexistuje.' ) ;
             Halt ;
        End ;
     Reset ( F ) ;
     For I := 0 To 255 Do
         Cetnost_znaku [ I ] := 0 ;
     Pocet_znaku := 0 ;
     Repeat
           Read ( F , Testovany_znak ) ;
           Inc ( Pocet_znaku ) ;
           Souhrna_ascii_hodnota := Souhrna_ascii_hodnota + Testovany_znak ;
           Inc ( Cetnost_znaku [ Testovany_znak ] ) ;
           Writeln ( 'Testuji: ' , Testovany_znak:3 ,
           '-', Char ( Testovany_znak ) , '..' ,
           Cetnost_znaku [ Testovany_znak ]:5);
     Until Eof ( F ) ;
     Prumerna_hodnota := Souhrna_ascii_hodnota Div Pocet_znaku ;
     Nejcasteji_pouzity_znak :=0 ;
     For I := 0 To 255 Do
         If Cetnost_znaku [ Nejcasteji_pouzity_znak ] < Cetnost_znaku [ I ] Then
            Nejcasteji_pouzity_znak := I ;
     Writeln ;
     Writeln ( ' Statistika souboru ' , paramstr(1) ) ;
     Writeln ;
     Writeln ( ' Prumerna hodnota   Pocet znaku   Celkova hodnota'+
     '   Nejcasteji pouzity znak.' ) ;
     Writeln ;
     Writeln ( '     ',Prumerna_hodnota : 7,
     pocet_znaku :15,souhrna_ascii_hodnota:18,
     Nejcasteji_pouzity_znak:20 ) ;
     Close ( F ) ;
     Readkey ;
     Writeln ;
     Writeln ( ' Spraseno Markym pro potrebu Vyhne..... ' ) ;
     Writeln ;
End .


            výheň