• Помогите,пожалуйста,написать программу в Pascal ABC
    ОЧЕНЬ НУЖНО

    question img

Ответы 1

  • // PascalABC.NET 3.1, сборка 1219 от 16.04.2016begin  var s:=ReadlnString('>');  var s1:=s.Trim;  var a:=s1.ToWords.ToArray; // a - массив слов  // b - массив слов с хвостовыми пробелами  var q:=Regex.Matches(s1,'(\S+\s*)');  var b:array of string;  SetLength(b,q.Count);  var i:=0;  foreach var e in q do begin    b[i]:=e.ToString;    Inc(i)    end;  // частотный словарь для первого слова  var d:=new Dictionary<char,integer>;  foreach var e in a[0] do d[e]:=d.Get(e)+1;  // все повторяющиеся символы из словаря помещаем в массив dub  var dub:=d.Where(x->x.Value>1).Select(x->x.Key).ToArray;  if dub.Length=0 then Writeln('НЕТ')  else begin    var res:=b[0]; // начало выходной строки    i:=1;    while s[i]=' ' do begin res:=' '+res; Inc(i) end;    for i:=1 to a.Length-1 do begin      var found:=false;      foreach var e in dub do begin        found:=Pos(e,a[i])>0;        if found then break        end;      if found then b[i]:=' '*(b[i].Length-a[i].Length);      res+=b[i]      end;      i:=s.Length;      while s[i]=' 'do begin res+=' '; Dec(i) end;      Writeln(res)  endend.Тестовое решение:>  балабол - по  данным словаря болтун,  человек, который  много говорит попусту   балабол - по       который  много говорит попусту
    • Автор:

      velazquez
    • 5 лет назад
    • 0
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years