С клавиатуры вводится символьная строка.Определите какой символ встречается в ней чаще...

0 голосов
622 просмотров

С клавиатуры вводится символьная строка.Определите какой символ встречается в ней чаще всего


Информатика (20 баллов) | 622 просмотров
0

Это задача на составление частотного словаря. К сожалению, Вы не оговорили набор символов, которые надо учитывать, так что вполне вероятно, что самым часто используемым символом окажется пробел.

Дан 1 ответ
0 голосов
Правильный ответ

Type
  index='0'..'z';
var
  Ch:array[0..255] of integer;
  s:string;
  i,max,imax:integer;
begin
  { очищаем массив счетчиков }
  for i:=0 to 255 do Ch[i]:=0;
  Writeln('Введите текст');
  Readln(s);
  for i:=1 to Length(s) do Inc(Ch[Ord(s[i])]);
  max:=Ch[0]; imax:=0;
  for i:=33 to 255 do { не рассматриваем непечатаемые символы и пробел}
    if max  Writeln('Символ "',Chr(imax),'" встретился ',max,' раз(а)')
end.

Тестовое решение:
Введите текст
"Что значит имя? Роза пахнет розой, хоть розой назови её, хоть нет." (В.Шекспир)
Символ "о" встретился 9 раз(а)

(142k баллов)