Задать вопрос
6 августа, 04:34

Написать программу на Паскале АВС.

Дана строка, в которой есть точки, запятые, пробелы, тире, слова. В общем, много-много всего. Нужно преобразовать строку по правилам Ворда. То есть

1. между словами один пробел

2. перед точкой или запятой пробела нет, но после-есть

3. тире выделяется пробелами с двух сторон

Вот и все!

+1
Ответы (1)
  1. 6 августа, 05:08
    0
    Var s, s1:string; i, p:integer;

    begin

    writeln ('Введите строку:') ;

    readln (s) ;

    s1:='';

    for i:=1 to length (s) do

    case s[i] of

    ',','.' : s1:=s1+s[i]+' ';

    '-' : s1:=s1+' - ';

    else s1:=s1+s[i];

    end;

    p:=pos (' ', s1) ;

    while p>0 do

    begin delete (s1, p, 1) ; p:=pos (' ', s1) ; end;

    p:=pos (',', s1) ;

    while p>0 do

    begin delete (s1, p, 1) ; p:=pos (',', s1) ; end;

    p:=pos ('.', s1) ;

    while p>0 do

    begin delete (s1, p, 1) ; p:=pos ('.', s1) ; end;

    writeln (s1) ;

    end.

    Пример:

    Введите строку:

    перед точкой или запятой пробела нет, но после - есть.

    перед точкой или запятой пробела нет, но после - есть.
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Написать программу на Паскале АВС. Дана строка, в которой есть точки, запятые, пробелы, тире, слова. В общем, много-много всего. Нужно ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы