Найти в тексте длину самого короткого слова - Turbo Pascal
Формулировка задачи:
В следующих заданиях под словом «текст» понимается строка
символов, слова в которой, разделены пробелами, ‘,’ , ‘.’ , ‘!’ , ‘?’ , ‘;’ , ‘:’
(одним или несколькими).
Варианты заданий:
Дан текст. Найти длину самого короткого слова.
Решение задачи: «Найти в тексте длину самого короткого слова»
textual
Листинг программы
uses crt; const rz=[' ',',','.','!','?',';',':']; var s:string; i,j,k,mn:integer; begin clrscr; writeln('Введите текстиз слов, разделенных знаками препинания'); readln(s); i:=1; mn:=255; while i<=length(s) do if not(s[i] in rz)and((i=1)or(s[i-1] in rz)) then begin k:=0; j:=i; while(j<=length(s))and not(s[j] in rz) do begin k:=k+1; j:=j+1; end; if k<mn then mn:=k; i:=i+k; end else i:=i+1; write('Длина самого короткого слова=',mn); readln end.
Объяснение кода листинга программы
- В начале кода подключается библиотека crt, которая используется для работы с потоками в Turbo Pascal.
- Затем определяются константы и переменные: rz - это массив символов, используемый для проверки наличия пробелов, запятых, точек, восклицательных и вопросительных знаков в строке; s - это переменная, в которую будет сохранена введенная пользователем строка; i, j, k, mn - это переменные-счетчики, которые будут использоваться для отслеживания длины самого короткого слова.
- Затем происходит инициализация переменных: i устанавливается равным 1, mn устанавливается равным 255 (максимальное значение длины строки в Turbo Pascal).
- Далее идет цикл while, который выполняется до тех пор, пока i меньше или равно длине строки s. Внутри цикла проверяется каждый символ строки s. Если символ не является одним из символов в массиве rz и предыдущий символ также не является одним из символов в массиве rz, то начинается подсчет длины самого короткого слова. Для этого создаются переменные k и j, инициализированные нулевыми значениями.
- В цикле while переменные k и j инкрементируются на единицу при каждом проходе. Когда длина текущего слова становится больше или равной mn, значение mn обновляется на значение k. После окончания цикла while переменная i инкрементируется на длину текущего слова.
- Если после выполнения цикла while длина самого короткого слова оказалась меньше или равной mn, то цикл while повторяется с начальными значениями i и j.
- После завершения цикла while выводится сообщение о длине самого короткого слова, которое сохранено в переменной mn.
- В конце программы выводится сообщение
Длина самого короткого слова=
, за которым следует значение переменной mn, полученное в результате выполнения программы.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д