const
bykvi=
'ЙЦУКЕНГШЩЗХЪЭЖДЛОРПАВЫФЯЧСМИТЬБЮйцукенгшщзхъэждлорпавыфячсмитьбю'
;
var
text, slovo, bykva,simslovo:
string
;
slovamas,simslova:
array
[
1..100
]
of
string
;
seslovo:
boolean
;
i,masint, kolslov,j:
integer
;
begin
simslovo:=
''
;
j:=
0
;
kolslov:=
0
;
masint:=
0
;
slovo:=
''
;
writeln
(
'Введите предложение'
);
readln(text);
text:= text +
' '
;
while
pos(
' '
,text)>
0
do
begin
delete(text,pos(
' '
,text),
1
);
end
;
if
pos(text[
1
], bykvi)<>
0
then
begin
seslovo:=
true
;
end
else
begin
seslovo:=
false
;
end
;
for
i:=
1
to
length(text)
do
begin
if
seslovo =
true
then
begin
if
pos(text[i], bykvi)<>
0
then
begin
seslovo:=
true
;
slovo:= slovo + text[i];
end
else
begin
seslovo:=
false
;
masint:= masint +
1
;
slovamas[masint]:= slovo;
kolslov:= kolslov +
1
;
slovo:=
''
;
end
;
end
;
if
seslovo =
false
then
begin
if
pos(text[i], bykvi)<>
0
then
begin
seslovo:=
true
;
slovo:= slovo + text[i];
end
else
begin
seslovo:=
false
;
end
;
end
;
end
;
for
i:=
1
to
kolslov
do
begin
if
length(slovamas[i][
1
]) = length(slovamas[i])
then
begin
j:=j+
1
;
simslova[j]:= slovamas[i];
end
;
if
length(simslovo) < length(slovamas[i])
then
begin
simslovo:= slovamas[i];
end
;
end
;
writeln
(
'Самое длинное симметричное слово: '
,simslovo);
end
.