Код
function Pal(S: String): Boolean;
//(C) Puporev
begin
if Length(S) <= 1{если 0 или 1 символ, это палиндром} Then
Pal := True
Else
Pal := (S[1] = S[Length(S)]) and Pal(Copy(S, 2, Length(S) - 2));
{иначе проверяем совпадение символов симметрично от концов строки к середине}
end;
var
s: string;
i, max: byte;
begin
{Найти порядковый номер наибольшего по значению числа, являющегося
симметричным в десятичном представлении}
max := 0;
readln(s);
if pal(s) then
begin
for i := 1 to length(s) do
if StrToInt(s[i]) > max then
max := StrToInt(s[i]);
writeln('Max = ', max)
end
else
writeln('Число не симметрично.');
end.