• В последовательности символов выделить все русские буквы и определить наиболее часто встречающиеся из них.

Ответы 6

  • Такие "фокусы" пришлось делать из-за того, что русская Ё стоит в кодовой таблице в стороне от остальных русских букв.
    • Автор:

      emilio120
    • 5 лет назад
    • 0
  • К сожалению, многие об этом забывают, когда пишут программы для работы с русскими буквами
    • Автор:

      dollyekwf
    • 5 лет назад
    • 0
  • Благодарю)
  • Кнопочки со звездочками вполне достаточно, чтобы словами не писать)
    • Автор:

      ireland
    • 5 лет назад
    • 0
  • Логично)))
  • // PascalABC.Net 3.0, сборка 1052const  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]<f[Succ(c)] then begin      t:=f[c]; tc:=ch[c]; sc:=Succ(c);      f[c]:=f[sc]; ch[c]:=ch[sc];       f[sc]:=t; ch[sc]:=tc    end;  Writeln('Частота встретившихся букв');  c:='А';  while (c<='а') and (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
    • Автор:

      joaquin
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years