profile
Опубликовано 6 лет назад по предмету Информатика от малыш345

Напишите текст программы (любой язык программирования) для решения сле-дующей задачи на ПЭВМ: С клавиатуры вводится текстовая строка. Найти в ней все предлоги «в» и заменить их на предлоги «на».

  1. Ответ
    Ответ дан Аккаунт удален
    // PascalABC.NET 3.1, сборка 1267 от 10.07.2016
    begin
      var s:=' '+ReadlnString('>');
      s:=(s.Replace(' в ',' на '))[2:];
      Writeln(s);
    end.

    Тестовые решения
    > Можем пойти в кино, в театр, в кафешку, а можем посидеть в "Знаниях"
    Можем пойти на кино, на театр, на кафешку, а можем посидеть на "Знаниях"

    > в лесу мы нашли вот такие грибы.
    на лесу мы нашли вот такие грибы.
  2. Ответ
    Ответ дан Gleb1Kosyrev
    //Pascal ABC.NET 3.1 сборка 1256

    Var
     s,s1:string;
    begin
    readln(s);
    if (s[1]='в') and (s[2]=' ') then
     begin
      delete(s,1,1);
      s:='на'+s;
     end;
    if (s[1]='В') and (s[2]=' ') then
     begin
      delete(s,1,1);
      s:='На'+s;
     end;
    while pos(' в ',s)<>0 do
     begin
      if (s[1]='в') and (s[2]=' ') then
     begin
      delete(s,1,1);
      s:='на'+s;
     end;if (s[1]='В') and (s[2]=' ') then
     begin
      delete(s,1,1);
      s:='На'+s;
     end;
      s1:=s1+copy(s,1,pos(' в ',s)-1)+' на ';
      delete(s,1,pos(' в ',s)+2);
     end;
      if (s[1]='в') and (s[2]=' ') then
     begin
      delete(s,1,1);
      s:='на'+s;
     end;
    if (s[1]='В') and (s[2]=' ') then
     begin
      delete(s,1,1);
      s:='На'+s;
     end;
    s:=s1+s;
    writeln(s);
    end.

    Пример ввода 1:
    запасти в зиму, приехать в год, приготовить в день, выпить лекарство в ночь
    Пример вывода 1:
    запасти на зиму, приехать на год, приготовить на день, выпить лекарство на ночь

    Пример ввода 2(глубокие песни современной отечественной эстрады):
    В в в в в в в в в в в в в в в в в в наааааааа.
    Пример вывода 2:
    На на на на на на на на на на на на на на на на на на наааааааа.

Самые новые вопросы