B заданном тексте одно заданное слово везде заменить на другое заданное слово такой же длины — Pascal(Паскаль)

Program Replace;
  Uses Crt;
  Var Text, Slovo1, Slovo2 : String;
      i, DlinaSlova, P     : Integer;
BEGIN ClrScr;
  Write('Введите строку : '); ReadLn(Text);
  Write('Какое слово заменить ? '); ReadLn(Slovo1);
  Write('На какое слово заменить ? '); ReadLn(Slovo2);
  WriteLn; WriteLn('О т в е т : ');
  WriteLn('Исходный текст: ', Text); DlinaSlova:=Length(Slovo1);
  DlinaSlova:=Length(Slovo1);
  P:=Pos(Slovo1,Text); {номер позиции, с которой в строке Text     }
                       {в первый раз встречается подстрока Slovo1  }
  While P>0 do         {цикл продолжается до тех пор,пока подстрока}
                       {Slovo1 встречается в строке Text           }
   begin                
     Delete(Text, P, DlinaSlova); {удаление подстроки Slovo1, начинаю-}
                                  {щейся с позиции P, из строки Text  }  
     Insert(Slovo2, Text, P);  {вставка подстроки Slovo2  }
                               { в строку Text с позиции Р}
     P:=Pos(Slovo1, Text); {номер позиции, с которой подстрока Slovo1} 
                           {встречается в строке Text в очередной раз}
   end;
  WriteLn('Новый текст: ', Text); 
  ReadLn
END.

Leave a Comment

15 − = 9