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