Дано натурально число n, символы S1……..Sn. .Заменить в последовательности S1……..Sn каждую группу букв child группой букв children- Pascal(Паскаль)

{ Дано натурально число n, символы S1........Sn. Заменить в
последовательности каждую группу букв child группой букв children.}
program Project2;
 
{$APPTYPE CONSOLE}
 
uses
  SysUtils;
 
const v:array[1..3] of char=('r','e','n'); //массив для вставки
var s:array[1..1000] of char;//последовательность
    n,i,j,k:integer;
begin
write('n=');
readln(n);
writeln('Vvedite simvoly, v tom chisle gruppy "child"');
for i:=1 to n do
read(s[i]); //при вводе нужно считать
readln;  //или вводить столбиком readln(s[i])
writeln('Ishodnaya posledovatelnost:');
for i:=1 to n do
write(s[i]);
writeln;
writeln;
i:=1;
while i<=n do
//если child
if(s[i]='c')and(s[i+1]='h')and(s[i+2]='i')and(s[i+3]='l')and(s[i+4]='d')then
 begin
  for k:=1 to 3 do //3 раза
   begin
    n:=n+1; //увеличиваем размер массива
    for j:=n downto i+5+k do //сдвигаем после child вправо
    s[j]:=s[j-1]; //на 1
    s[i+4+k]:=v[k]; //вставляем r,e,n по очереди
   end;
  i:=i+9; //перешагиваем
 end
else i:=i+1;//если нет, вперед
writeln('Vstavka "ren"');
for i:=1 to n do
write(s[i]);
readln
end.

Leave a Comment

+ 62 = 71