ЛЁГКАЯ ЗАДАЧА ПО ПАСКАЛЮ! Составьте программу, которая позволяет удалить слова t из...

0 голосов
54 просмотров

ЛЁГКАЯ ЗАДАЧА ПО ПАСКАЛЮ! Составьте программу, которая позволяет удалить слова t из строки s. Строку s и слово t, которое надо удалить, введите с клавиатуры.


Информатика (774 баллов) | 54 просмотров
0

Если лёгкая, чего сами не решите?

0

Пример ввода: Дождик, дождик, перестань!дождикПример вывода: , , перестань!

0

Именно такой пример в учебнике... На ваш вопрос я не знаю, как ответить. Самой интересно, что авторы подразумевали под таким заданием, так как не совсем понятно.

0

А как это написать?)

Дано ответов: 2
0 голосов
Правильный ответ

//Мне скучно, потому я пишу сомнительный код по примеру Эникея
//PascalABC.NET 3.2 сборка 1318

Var
  s,t,snew,curr,add,currsave:string;
  i,j,flag:integer;
begin
readln(s);
readln(t);
//s=lowcase(s);
t:=lowercase(t);
 while pos(' ',s)<>0 do
  begin
  flag:=0;
    curr:=copy(s,1,pos(' ',s));
    currsave:=curr;
    if pos(t,lowercase(curr))<>0 then
      begin
        flag:=1;
        delete(curr,pos(t,lowercase(curr)),length(t));
        for j:=1 to length(curr) do
        if ((curr[j]>='a') and (curr[j]<='я')) or ((curr[j]>='А') and (curr[j]<='Я')) or ((curr[j]>='a') and (curr[j]<='z')) or ((curr[j]>='A') and (curr[j]<='Z')) then<br>          flag:=0;
     end;
  if flag=1 then snew+=curr else snew+=currsave;
  delete(s,1,pos(' ',s));
  end;
curr:=s;
currsave:=curr;
flag:=0;
if pos(t,lowercase(curr))<>0 then
      begin
        flag:=1;
        delete(curr,pos(t,lowercase(curr)),length(t));
        for j:=1 to length(curr) do
        if ((curr[j]>='a') and (curr[j]<='я')) or ((curr[j]>='А') and (curr[j]<='Я')) or ((curr[j]>='a') and (curr[j]<='z')) or ((curr[j]>='A') and (curr[j]<='Z')) then<br>          flag:=0;
     end;
if flag=1 then
 snew+=curr
 else
 snew+=currsave;
writeln(snew);
end.

Пример ввода:
Который из всех котов кот съел мясо
Пример вывода:
Который из всех котов  съел мясо

(38.6k баллов)
0

Спасибо за помощь))

0

Не за что.

0

Вы мне очень помогли))

0 голосов
// PascalABC.NET 3.2, сборка 1356 от 04.12.2016
// Внимание! Если программа не работает, обновите версию!

begin
   Writeln(ReadlnString('s=').Replace(ReadlnString('t='),''))
end.

Пример:
s= дождик, дождик, перестань!
t= дождик
, , перестань!

(150k баллов)
0

Не отображается ваше новое решение(

0

Всё) Появилось) Спасибо Вам ещё раз огромное за помощь!!!

0

Вы мне очень помогли))