Назовем натуральное число палиндромом, если его запись читается одинаково с начала и с конца (как, например 4884, 393, 1). определить, является ли заданное число и его квадрат палиндромами.

crazy660 crazy660    2   02.09.2019 15:20    1

Ответы
gorodchikova23 gorodchikova23  06.10.2020 12:33
Var n : int64;

Function isPali(A : int64) : Boolean;
Var B : int64;
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;

Begin
  Readln(n);
  If isPali(n) then Writeln('Это полиндром.') else Writeln('Это не полиндром.');
  Write('Его квадрат ',sqr(n));
  If isPali(sqr(n)) then Writeln(' полиндром.') else Writeln(' не полиндром.');
end.

Хотя в Pabc.net есть функция и покороче:

Function IsPali(B : Longint) : Boolean;
Begin
  IsPali:=(B=IntRevers(B));
end;
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика