program doixung;
var
str, reverseStr: string;
i, count, maxWordLength: integer;
words: array of string;
begin
write('Nhập vào một xâu kí tự: ');
readln(str);
reverseStr := ''
for i := length(str) downto 1 do
reverseStr := reverseStr + str[i];
if str = reverseStr then
writeln('Xâu là đối xứng')
else
begin
writeln('Xâu không đối xứng');
writeln('Xâu đảo ngược: ', reverseStr);
end;
count := 0;
maxWordLength := 0;
SetLength(words, 0);
while Length(str) > 0 do
begin
i := Pos(' ', str);
if i = 0 then
i := Length(str) + 1;
if i - 1 > maxWordLength then
maxWordLength := i - 1;
SetLength(words, Length(words) + 1);
words[Length(words) - 1] := Copy(str, 1, i - 1);
Delete(str, 1, i);
Inc(count);
end;
writeln('Số từ trong xâu: ', count);
writeln('Từ dài nhất: ', maxWordLength);
end.