Показать сообщение отдельно
  #2  
Старый 26.05.2016, 06:40
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,015
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну, тут легко. Только там поправишь - не помню я какие из низ звонкие согласные.
Код:
procedure TForm1.Button1Click(Sender: TObject);
const
  Letters : Array [1..11] Of Char = ('б','в','г','д','ж','з','й','л','м','н','р');
var
  Counts : Array [1..11] Of Integer;
  SrcStr : String;
  I, J, K : Integer;
  Lst : TSTringList;
  S : String;
  Msg : String;
begin
  SrcStr := 'ботва,растет,на,огороде,в,кустах,застряли,листья';
  For I := 1 To 11 Do Counts[i] := 0;

  Lst := TStringList.Create;
  Lst.Clear;
  Lst.Delimiter := ',';
  Lst.DelimitedText := SrcStr;

  For I := 0 To Lst.Count-1 Do
    begin
      S := Lst[i];
      For J := 1 To 11 Do
        For K := 1 To LEngth(S) Do
          If Letters[J] = S[K] Then
            begin
              Counts[J] := Counts[J] + 1;
              Break;
            end;
    end;
  Lst.Free;

  Msg := '';
  For I := 1 To 11 Do
    If Counts[i] > 1 Then Msg := Msg + Letters[i];
  ShowMessage(Msg);
end;
Ответить с цитированием