Program Nahrada;

var puvodni, hledany, pomocny, vystupni: String;
    prvni, nahrada: String;
    prvnicast, treticast: String;
    delka, delkapuv, i, j, k: integer;
    pasuje: boolean;

begin
  writeln('V tomto textu je mon hledat a nahrazovat:');
  writeln();
  puvodni := 'U nikdy nebudu uit spoluky ltat';
  writeln(puvodni);
  writeln();
  writeln('Zadej hledan etzec: ');
  readln(hledany);
  writeln('Zadej nhradu: ');
  readln(nahrada);
  delka := length(hledany);
  delkapuv:=length(puvodni);
  if delka <= delkapuv then
  begin
    pasuje:=False;
    prvni := hledany[1];
    prvnicast:='';
    treticast:='';
    for j:=1 to length(puvodni) do
    begin
      if puvodni[j] = prvni then
      begin
        pomocny:='';
        for k:=j to j+delka-1 do
          pomocny:=pomocny+puvodni[k];
        if pomocny = hledany then
        begin
          pasuje := True;
          if j <> 1 then
            for i:=1 to j-1 do
              prvnicast:=prvnicast+puvodni[i];
          if j <> delkapuv then
            for i:=j+delka to delkapuv do
              treticast:=treticast+puvodni[i];

          vystupni := prvnicast + nahrada + treticast;

          prvnicast:='';
          treticast:='';
        end;
      end;
    end;
    if pasuje then
    begin
      writeln('pasuje');
      writeln('Nov etzec: ', vystupni);
      end
    else writeln('nepasuje');
  end
  else writeln('Hledan etzec je del ne pvodn etzec');
  readln();
end.