Добавление пробелов в строку
Задача
Добавить в строку пробелы после знаков препинания, если они там отсутствуют.
Решение
Алгоритм решения задачи:
- Извлечь очередной символ из строки.
- Если он является знаком препинания, а после него нет пробела, то скопировать часть строки до этого символа включительно, добавить пробел и скопировать оставшуюся часть строки.
Программа на языке Паскаль:
var s: string; c: char; i: byte; begin write('String: '); readln(s); i := 1; repeat c := s[i]; if ((c='.')or(c=',')or(c='!')or(c='?')) and (s[i+1]<>' ') then s := copy(s,1,i) + ' ' + copy(s,i+1,length(s)-i); i := i + 1; until (i >= length(s)); writeln('String: ',s); readln end.
Комментарии
допустим 15 символов в…
допустим 15 символов в строке...
аб.в.о.аб.в.а.о
находим первую точку, ставим пробел...длина строки стала 16..
находим вторую ставим пробел..длина строки 17.. и т.д.
но цикл прокручивается только 15 раз..поэтому знаки которые стоят после 15 символа не будут проверяться...
var…