Дано число является ли оно палиндромом в Pascal. Если можно с объяснением каждого шага.
Дано число является ли оно палиндромом в Pascal. Если можно с объяснением каждого шага.
Ответ(ы) на вопрос:
Гость
Function isPali(A : Longint) : Boolean;
Var B : Longint;
Begin
B:=1;
While B9 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.
Гость
//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
Пример вывода:
Палиндром
Не нашли ответ?
Похожие вопросы