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

1. реверс строки - есть функция ReverseString
2. Дальше добиваем случайными символами до длинны, кратной 5.
3. Дальше вставляем пробелы.

Код:
function SmartReverse(AText : String) : String;
var
  Buf : String;
begin
  // 1
  Buf := ReverseString(AText);

  // 2
  While (Length(Buf) mod 5) <> 0 Do
    Buf := Buf + Chr(Random(33) + Ord('а')); // а - русская
  
  // 3
  Result := '';
  While Buf <> '' Do
    Begin
      Result := Result + Copy(Buf,1,5);
      Buf := Copy(Buf,6,Length(Buf)-5);
      If Buf <> '' Then Result := Result + '  ';
    End;
end;

ЗЫ. Код не проверял.
Ответить с цитированием