• Решить либо на С, С++, Pascal

    Дана строка, состоящая из слов, разделенных пробелами. Напишите программу, удаляющую лишние пробелы и добавляющую недостающие пробелы. Пробел считается лишним, если он: *стоит в начале строки; * стоит перед знаком препинания; * стоит в конце строки; * следует за пробелом. Добавить пробел после знака препинания, при условии выполнения предыдущих пунктов.

Ответы 1

  • //Pascal ABC.NET v3.1 сборка 1172Var s,sr:string; i,j,n:integer; pr:array of char=('.',',',';',':','!','?');begin readln(s);s:=s.Trim;var ars:=s.ToWords();s:='';for i:=0 to ars.Length-1 dos+=ars[i]+' ';s:=s.Trim;i:=0;while i<>s.Length dobegininc(i);if (s[i] in pr) and (s[i-1]=' ') then delete(s,i-1,1);end;i:=0;while i<>s.Length-1 dobegininc(i);if (s[i] in pr) and (s[i+1]<>' ') then insert(' ',s,i+1);end;s:=s.Trim;writeln(s);end.Пример ввода:Очень, очень ,очень , очень ,очень,очень много слов.Пример вывода:Очень, очень, очень, очень, очень, очень много слов.
    • Автор:

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

Войти через Google

или

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

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

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