Структуры данных. Строки - 12 стр.

UptoLike

14
Пример 4. Даны строки
S, S1 и символ C. Вставить в строку S перед
каждым символом
C строку S1.
Решение оформлено в виде процедуры
S41( S, S1, C ).
Входные параметры: строки
S, S1, C.
Выходные параметры: строка
S.
procedure S41(var S, S1: string; C: char);
var i, j, k, n: integer;
begin
k:= ord(S1[0]); n:= ord(S[0]); i := 1;
while i <= n do{повторять, пока не закончилась строка S}
begin
if S[i]=C then
begin
{сдвиг вправо элементов от очередного символа C
до конца строки S}
for j:=n downto i do
S[j+k] := S[j];
n := n+k;
S[0] := chr(n); {увеличить длину строки}
{вставить на освободившееся место символы строки S1}
for j:= 1 to k do
S[i+j-1] := S1[j];
i := i+k
end;
i := i+1
end
end;