Найти любое слово в исходной последовательности символов, начинающееся с комбинации букв но - Pascal ABC (13223)
Формулировка задачи:
Помогите решить задачу.
Дана строка s, содержащая менее чем 256 символов и представляющая собой набор слов, разделенных одним или несколькими пробелами. Найти любое слово в исходной последовательности символов, начинающееся с комбинации букв но. Использовать стандартные процедуры и функции в действиях над строками.
Принцип действия не понял, помогите хотя бы начать.
Решение задачи: «Найти любое слово в исходной последовательности символов, начинающееся с комбинации букв но»
textual
Листинг программы
const sub=' но'; space=' '; var str : string; i, j : byte; k : boolean; BEGIN WriteLn('Введите строку:'); ReadLn(str); Insert(space, str, 1); Insert(space, str, Length(str)+1); k:=true; repeat i:=0; i:= Pos(sub, str); j:=i; if (i<>0) then begin k:=false; repeat Write(str[i]); Inc(i); until (str[i]=space); Delete(str, j, i-j); WriteLn; end until i=0; if k then WriteLn('Нет слов.'); END.
Объяснение кода листинга программы
- В начале объявляются необходимые переменные: sub, space, str, i, j, k.
- Пользователю предлагается ввести строку.
- Введенная строка сохраняется в переменной str.
- Далее происходит вставка пробела в начало и конец строки.
- Переменная k устанавливается в значение true.
- Затем идет цикл repeat, который будет выполняться до тех пор, пока не будет найдено слово, начинающееся с комбинации букв
но
. - Внутри цикла объявляется переменная i, которая будет использоваться для поиска первого символа в строке.
- Затем объявляется переменная j, которая будет использоваться для отслеживания текущего индекса символа
но
в строке. - Если i<>0, то это означает, что в строке есть слово, начинающееся с
но
. В этом случае переменная k устанавливается в false, чтобы начать вывод найденного слова. - Далее идет цикл repeat, который будет выполняться до тех пор, пока текущий символ в строке не станет пробелом.
- Внутри цикла выводится каждый символ строки, начиная с индекса i.
- После завершения цикла i, переменная k снова проверяется. Если k=false, значит, слово было найдено, и выводится сообщение
Нет слов.
. - Цикл repeat завершается, когда i становится равным 0.
- Код заканчивается.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д