Перевернуть каждое слово, сохранив неизменным их порядок в строке - Pascal
Формулировка задачи:
Рано строку из слов и пробелов. Перевернуть каждое слово, сохранив неизменным их порядок в строке.
Решение задачи: «Перевернуть каждое слово, сохранив неизменным их порядок в строке»
textual
Листинг программы
var s:string; i,k,len:integer; c:char; begin writeln('Введите строку из слов, разделенных пробелами'); readln(s); i:=1; while i<length(s) do // идем по строке if (s[i]<>' ')and((i = 1) or (s[i-1]=' ')) then //если не пробел, а перед ним пробел (или начало строки), новое слово begin len := 0; while(i + len <= length(s))and(s[i + len]<>' ') do inc(len); //найдем его длину for k := 1 to len div 2 do // поменяем символы прямо в исходной строке begin c := s[i + k - 1]; s[i + k - 1] := s[i + len - k]; s[i + len - k] := c; end; i := i + len; end else i:=i+1; //пропускаем пробелы write(s); end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д