var
s: string; ar: array of char; i, c, j: integer; b: boolean;
begin
b := true; i := 100; while true do begin s := i.ToString; setlength(ar, i.ToString.Length); ar := s.Reverse.ToArray; for j := 1 to i.ToString.Length do if (s[j] = ar[j - 1]) then else b := false; if(b = true) then c := c + 1 else b := true; if (i = 999) then break;
i := i + 1;
end; write(c); end.
Это можно найти и без компьютера. Трехзначное число-палиндром может начинаться (и заканчиваться) цифрой от 1 до 9 - всего 9 цифр. Каждой первой цифре может соответствовать любая из десяти вторых цифр, итого получаем 9×10 = 90.Тем не менее, приведенная ниже программа решает задачу простым перебором.// PascalABC.NET 3.2, сборка 1341 от 20.11.2016begin Writeln(Range(100,999).Where(x->(x mod 10)=(x div 100)).Count)end.Результат90