program StringhePalindrome;
const
Nmax = 20;
type
TipoIndice = 1..Nmax;
TipoStringa = packed array [TipoIndice] of char;
var
fr : TipoStringa;
lung : integer;
ch : char;
function Palindroma (stringa: TipoStringa; lunghezza: TipoIndice): boolean;
var
i : TipoIndice;
begin
Palindroma := TRUE;
for i := 1 to trunc(lunghezza/2) do
if stringa[i] <> stringa[lunghezza-i+1] then
Palindroma := FALSE
end;
begin
writeln('Scrivi una stringa di al piu'' ' , Nmax,
' caratteri terminata da un ''.'' !');
lung := 0;
read(ch);
while (ch <> '.') and (lung < Nmax) do
begin
lung := lung + 1;
fr[lung] := ch;
read(ch)
end;
write('La stringa "', fr, '" e'' lunga ', lung);
if Palindroma(fr, lung) then
writeln(' e palindroma')
else
writeln(' e non palindroma')
end.