
20.06.2011, 22:09
|
 |
.
|
|
Регистрация: 18.05.2011
Адрес: Омск
Сообщения: 3,970
Версия Delphi: 3,5,7,10,12,XE2
Репутация: выкл
|
|
Попробуй, может подойдёт:
Код:
function Palindrom(S : String) : Boolean;
var
I : Integer;
s1 : String;
begin
s1 := '';
for I := Length(s) downto 1 do
s1 := s1 + s[i];
Result := s = s1;
end;
procedure TForm1.Button6Click(Sender: TObject);
var
S, S1, S2 : String;
I, K : Integer;
begin;
if Edit1.Text = '' then
Exit;
S := Edit1.Text;
while Pos(' ', S) > 0 do
delete(S, Pos(' ', S), 1);
I := Length(S);
s1 := '';
while S[i] <> ' ' do
begin
S1 := S[i] + S1;
dec(I);
end;
K := 0;
while Pos(' ', S) > 0 do
begin
S2 := Copy(S, 1, Pos(' ', S) - 1);
if (S2 <> S1) and Palindrom(S2) then
begin
S2 := ' ';
inc(K);
end;
delete(S, 1, Pos(' ', S));
end;
if K = 0 then
ShowMessage('В строке не найдено палиндрома! ');
end;
|