Символьная строка содержит одно слово. Проверить, будет ли оно читаться одинаково справа налево и слева направо(палиндромом) — Pascal(Паскаль)

var
s:string;
i,f:integer;
begin
readln(s);
for i:=1 to length(s) div 2 do
if s[i]<>s[length(s)+1-i] then f:=1;
if f=0 then writeln('yes')else wriyteln('no');
readln;
end.

Вариант 2

function Pall(s:string):boolean;
begin
  if (Copy(s,2,Length(s)-2)<>'') and (s[1]=s[Length(s)]) then
    Pall:=Pall(Copy(s,2,Length(s)-2))
  else
    Pall:=s[1]=s[Length(s)]
end;
var
  s:string;
begin
  ReadLn(s);
  WriteLn(Pall(s));
end.

Leave a Comment

− 3 = 1