что то не особо понял ): вот например аналогичная задача
я понял как с палиндромами решить:
Рассматривается непустая строка, содержащая не более 80 символов. Каждый символ строки может быть малой английской буквой, цифрой или одним из знаков +(плюс), –(минус), *(звёздочка). Группой цифр будет называться такая совокупность последовательных цифр, которой непосредственно не предшествует и за которой непосредственно не следует цифра. Аналогично определяется группа знаков и группа букв. Палиндромом будет называться такая группа цифр, которая слева-направо читается так же как и справа-налево(12321).
Требуется написать такую программу, которая находит и печатает все такие группы цифр, если палиндромов нет, то напечатать сообщение; «В строке нет ни одного палиндрома». Если в строке нет ни одной группы цыфр «В строке нет ни одной группы цифр». Исходная строка вводится с клавиатуры.
program ctroki;
uses crt;
label 1;
const
numb='123456789';
var
msv:string[80];
ms:string[80];
n,j,k,m,r,i,l,f:integer;
begin
textbackground(9);
clrscr;
gotoxy(30,3);
textcolor(14);
writeln('Vveite stroku');
gotoxy(14,8);
textcolor(10);
readln(msv);
n:=length(msv);
r:=0;
l:=0;
for i:=1 to n do
begin
k:=pos(msv,numb);
if k>0 then
begin
ms:=ms+msv;
f:=1;
l:=1;
end
else
begin
if f>0 then
begin
f:=0;
k:=length(ms);
m:=k div 2;
for j:=1 to m do
begin
if ms[j]=ms[k] then
begin
k:=k-1;
r:=1;
end
else goto 1
end;
textcolor(14);
writeln(ms);
1: delete(ms,1,length(ms));
end;
end;
end;
gotoxy(30,10);
textcolor(14);
if l<1 then writeln('V CTROKE NET GRUPP CIFR');
gotoxy(30,11);
textcolor(14);
if r<1 then writeln('v ctroke net palindromov');
readkey;
end.
а вот с этой не особо понял =\