Удалить пробелы, стоящие между первым вторым словами, а также между двумя последними словами - Pascal
Формулировка задачи:
Удалить пробелы, стоящие между первым вторым словами, а также между двумя последними словами, на паскале
Решение задачи: «Удалить пробелы, стоящие между первым вторым словами, а также между двумя последними словами»
textual
Листинг программы
var s:string; i,j,k:integer; begin repeat write('введите строку:');readln(s); until s<>''; i:=1; while (s[i]=' ')and (i<length(s)) do i:=i+1;{пропуск лидирующих пробелов} for k:=i to length(s) do if s[k]=' ' then begin while (s[k]=' ') and (k<length(s)) do delete(s,k,1); break; end; j:=length(s); while (s[j]=' ') and (j>1) do j:=j-1; {пропуск финишных пробелов} k:=j; repeat if (k>1) and (s[k]=' ') and (k<length(s)) then begin while (s[k]=' ') and (k>1) do begin delete(s,k,1);k:=k-1;end; break; end; k:=k-1; until k<=i; writeln('Полученная строка: "',s,'"'); end.
Объяснение кода листинга программы
- Создается переменная s и переменные-счетчики i, j, k для работы со строкой:
s
- пустая строка,i
- счетчик для поиска первого непробельного символа,j
- счетчик для поиска последнего непробельного символа,k
- вспомогательный счетчик.
- Пользователю предлагается ввести строку, циклический запрос ввода повторяется, пока строка не будет заполнена.
- Пока переменная i меньше, чем длина строки и символы по указанному индексу строки равны пробелу, значение переменной i увеличивается на 1. Этот фрагмент кода пропускает начальные пробелы в строке.
- Организуется цикл перебора всех символов строки от i до конца строки.
- Если текущий символ - пробел, то внутри этого условия осуществляется удаление всех последующих пробелов до первого непробельного символа, затем цикл завершается.
- Устанавливается значение j равное длине строки.
- Запускается цикл, который перебирает все символы строки с конца в начало до первого непробельного символа.
- Если текущий символ - пробел, то внутри этого условия осуществляется удаление всех предыдущих пробелов до первого непробельного символа, затем цикл завершается.
- Выводится итоговая отредактированная строка без лидирующих и финишных пробелов.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д