Найти в тексте длину самого короткого слова - 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.

Объяснение кода листинга программы

  1. В начале кода подключается библиотека crt, которая используется для работы с потоками в Turbo Pascal.
  2. Затем определяются константы и переменные: rz - это массив символов, используемый для проверки наличия пробелов, запятых, точек, восклицательных и вопросительных знаков в строке; s - это переменная, в которую будет сохранена введенная пользователем строка; i, j, k, mn - это переменные-счетчики, которые будут использоваться для отслеживания длины самого короткого слова.
  3. Затем происходит инициализация переменных: i устанавливается равным 1, mn устанавливается равным 255 (максимальное значение длины строки в Turbo Pascal).
  4. Далее идет цикл while, который выполняется до тех пор, пока i меньше или равно длине строки s. Внутри цикла проверяется каждый символ строки s. Если символ не является одним из символов в массиве rz и предыдущий символ также не является одним из символов в массиве rz, то начинается подсчет длины самого короткого слова. Для этого создаются переменные k и j, инициализированные нулевыми значениями.
  5. В цикле while переменные k и j инкрементируются на единицу при каждом проходе. Когда длина текущего слова становится больше или равной mn, значение mn обновляется на значение k. После окончания цикла while переменная i инкрементируется на длину текущего слова.
  6. Если после выполнения цикла while длина самого короткого слова оказалась меньше или равной mn, то цикл while повторяется с начальными значениями i и j.
  7. После завершения цикла while выводится сообщение о длине самого короткого слова, которое сохранено в переменной mn.
  8. В конце программы выводится сообщение Длина самого короткого слова=, за которым следует значение переменной mn, полученное в результате выполнения программы.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.8 из 5
Похожие ответы