Помогите пожалуйста с решением...
Найти в тексте все слова которые являются полиндромами тоесть читаются одиноко в обе стороны...
шалаш,кок...и .т.п...
жду...
заранее благодарен
program _Palindrom_;
uses crt;
const M:set of char=['A'..'Z','a'..'z','А'..'П','Р'..'Я','а'..'п','р'..'я'];
var
{
f1 - исходный файл в котором содержится строка;
f2 - выходной файл в котором содержатся слова палиндромы
}
f1,f2:text;
i:integer;
t,s:string;
{Этой функции присваевается значение перевернутого слова}
function palindrom(x:string):string;
var
str:string;
j:integer;
begin
str:='';
for j:=length(x) downto 1 do str:=str+x[j];
palindrom:=str;
end;
begin
ClrScr;
assign(f1,'input.txt');
assign(f2,'output.txt');
reset(f1);
rewrite(f2);
readln(f1,s); {Считываем из файла строку в переменную s}
i:=1;
while i<=length(s) do
begin
t:='';
while not(s[i] in M) and (i<=length(s)) do i:=i+1;
{ Выделяем слово из строки }
while (s[i] in M) and (i<=length(s)) do
begin
t:=t+s[i]; i:=i+1
end;
{ И проверка }
if length(t)>1 then
if palindrom(t)=t then
begin writeln(f2,t);writeln(t) end;
i:=i+1;
end;
close(f1);
close(f2);
end.