В последовательности символов выделить все русские буквы и определить наиболее часто встречающиеся из них.
В последовательности символов выделить все русские буквы и определить наиболее часто встречающиеся из них.
Ответ(ы) на вопрос:
Гость
// PascalABC.Net 3.0, сборка 1052
const
Rus=['А'..'Я'];
var
s:string;
i,k,t:integer;
c,c1,tc,sc:char;
f:array['А'..'а'] of byte; // 'а' - это для 'Ё'
ch:array['А'..'а'] of char;
begin
Write('Введите строку: '); Readln(s);
for c:='А' to 'а' do begin f[c]:=0; ch[c]:=c end;
k:=0;
for i:=1 to Length(s) do begin
c:=UpCase(s[i]);
if c in Rus then begin Inc(f[c]); Inc(k) end
else
if c='Ё' then begin Inc(f['а']); Inc(k) end;
end;
Writeln('Количество русских букв равно ',k);
{ сортировка массива со счетчиком количества букв }
for c1:='А' to Pred('а') do
for c:='А' to Pred('а') do
if f[c]0) do begin
if ch[c]='а' then ch[c]:='Ё';
Writeln(ch[c],' - ',f[c]);
Inc(c)
end;
end.
Тестовое решение:
Введите строку: Когда я был парнишкой, носил я брюки клёш
Количество русских букв равно 33
Частота встретившихся букв
К - 4
И - 3
Л - 3
О - 3
А - 2
Б - 2
Н - 2
Р - 2
Ш - 2
Я - 2
Г - 1
Д - 1
Й - 1
П - 1
С - 1
Ы - 1
Ю - 1
Ё - 1
Не нашли ответ?
Похожие вопросы