Дано число является ли оно палиндромом в pascal. если можно с объяснением каждого шага.

PlatMasha PlatMasha    3   08.07.2019 18:10    0

Ответы
jutyra jutyra  13.08.2020 13:31
//Pascal ABC.NET Версия 2.2 Сборка 790
var s:string;
i,s1:integer;
begin;
readln(s1);  //вводим число
str(s1,s);
for i:=1 to length(s) div 2+length(s) mod 2 do
{цикл от начала и до середины/центра в зависимости от чётности}
begin;
   if s[i]<>s[length(s)+1-i] then
{если 1 символ не равен последнему, второй-предпоследнему и т.д.}
   begin;
        writeln('Не палиндром');
        exit; //если это условие хоть раз верно-программа завершается
   end;
end;
writeln('Палиндром'); //если условие не разу не оказалось верным
end.

Пример ввода:
121
Пример вывода:
Палиндром
ПОКАЗАТЬ ОТВЕТЫ
Алёна345135537 Алёна345135537  13.08.2020 13:31
Function isPali(A : Longint) : Boolean;
Var B : Longint;
Begin
  B:=1;
  While B<A do B:=B*10;
  B:=B div 10;
  If A>9 then isPali:=((A div B)=(A mod 10)) and isPali(A mod B div 10) else isPali:=True;
end;

Var N : Longint;
Begin
  Readln(N);
  Writeln(isPali(N));
end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика