VAR
A, B: LongInt;
i, len, len2, count: Integer;
Sym: Boolean;
{Сделаем с помощью преобразования числа в строку}
S: String;
BEGIN
WriteLn('Симметричные из промежутка от А до В');
Write('Введите число A: '); ReadLn(A);
Write('Введите число B: '); ReadLn(B);
if A > B then begin
WriteLn('Неправильный ввод: A > B');
Halt(1) {Прекращение работы с кодом ошибки}
end;
count := 0; {А вдруг нет ни одного, тогда скажем}
while A <= B do begin
Str(A, S);
len := length(S);
len2:= len div 2;
Sym := TRUE;
for i:=1 to len2 do
if S[i] <> S[len - i + 1] then
begin
Sym:=FALSE;
Break; {Немедленное прекращение этого цикла}
end;
if Sym then begin Write(A:8,' '); count := count+1 end;
A := A + 1;
end;
if count = 0 then WriteLn('Таких чисел нет');
WriteLn;
END.