Advertisement
Guest User

Untitled

a guest
Dec 16th, 2018
96
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 2.33 KB | None | 0 0
  1. [Пересланное сообщение]
  2.   Ivan Bazanov, 29 октября в 10:15
  3.   uses CRT;
  4.    
  5.    
  6.    
  7.   function F(i:integer):string; // preobrazovanie v dvoichniy kod i perevorot stroki
  8.    var
  9.    s:string;
  10.    c:char;
  11.    j,k:integer;
  12.    begin
  13.    while (i<>0) do
  14.    begin
  15.    s:=s+IntToStr(i mod 2);
  16.    i:=i div 2;
  17.    end;
  18.    j:=length(s)div 2;
  19.    for k := 1 to j do begin
  20.    c := s[k];
  21.    s[k] := s[length(s)-k+1];
  22.    s[length(s)-k+1] := c;
  23.    end;
  24.    F:=s;
  25.    end;
  26.    
  27.    
  28.   function F2(s:string; i:integer):string;//dobovlenie nuley
  29.   var
  30.    j:integer;
  31.   begin
  32.    if length(s)<i then
  33.    begin
  34.    for j:=length(s) to i-1 do
  35.    Insert('0',s,1);
  36.    end;
  37.    F2:=s;
  38.   end;
  39.    
  40.   procedure F3(s:string); // samiy chastiy simvol
  41.   var
  42.    s1,s2:string;
  43.    i,k,mx:integer;
  44.    c:char;
  45.   begin
  46.   s1:=s;
  47.   mx:=0;
  48.   for i:=1 to length(s) do
  49.    begin
  50.    k:=0;
  51.    while pos(s[i],s1)>0 do
  52.    begin
  53.    k:=k+1;
  54.    delete(s1,pos(s[i],s1),1);
  55.    end;
  56.    if k>mx then
  57.    begin
  58.    mx:=k;
  59.    c:=s[i];
  60.    end;
  61.    end;
  62.    writeln('Самый частый символ:' ,c ,' Встретился раз: ',mx);
  63.    
  64.   end;
  65.    
  66.   var //main()
  67.    a:array of string;
  68.    str,org:string;
  69.    i,j,K:int64;
  70.    
  71.    
  72.   begin
  73.    
  74.    writeln('Введите строку : ');
  75.    readln(str);
  76.    org:='';
  77.    for i:=1 to length(str) do
  78.    if (pos(str[i],org)=0) then org:=org+str[i];
  79.    if (ln(length(org))/ln(2)) = int((ln(length(org))/ln(2))) then k:=trunc(ln(length(org))/ln(2)) else k:=trunc(ln(length(org))/ln(2))+1;
  80.    ClrScr;
  81.    writeln('Всего различных символов:', length(org));
  82.    writeln('Размер алфавита:', k);
  83.    setlength(a,length(org));
  84.    for i:=0 to length(org)-1 do
  85.    begin;
  86.    a[i]:=F(i);
  87.    a[i]:=F2(a[i],k);
  88.    end;
  89.    writeln('Таблица кодов каждого элемента: ' );
  90.    for i:=1 to length(org)do
  91.    begin
  92.    writeln(org[i],'= ',a[i-1]);
  93.    end;
  94.    
  95.    
  96.    
  97.    writeln('Исходная строка: ',str);
  98.    write('Исходный код строки:');
  99.    for i:=1 to length(str) do
  100.    begin
  101.    for j:=1 to length(org) do
  102.    begin
  103.    if str[i]=org[j] then write(a[j-1],' ');
  104.    end;
  105.    end;
  106.    writeln();
  107.    F3(str);
  108.   end.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement