Найти в тексте длину самого короткого слова - Turbo Pascal

Узнай цену своей работы

Формулировка задачи:

В следующих заданиях под словом «текст» понимается строка символов, слова в которой, разделены пробелами, ‘,’ , ‘.’ , ‘!’ , ‘?’ , ‘;’ , ‘:’ (одним или несколькими). Варианты заданий: Дан текст. Найти длину самого короткого слова.

Решение задачи: «Найти в тексте длину самого короткого слова»

textual
Листинг программы
  1. uses crt;
  2. const rz=[' ',',','.','!','?',';',':'];
  3. var s:string;
  4.     i,j,k,mn:integer;
  5. begin
  6. clrscr;
  7. writeln('Введите текстиз слов, разделенных знаками препинания');
  8. readln(s);
  9. i:=1;
  10. mn:=255;
  11. while i<=length(s) do
  12. if  not(s[i] in rz)and((i=1)or(s[i-1] in rz)) then
  13.  begin
  14.   k:=0;
  15.   j:=i;
  16.   while(j<=length(s))and not(s[j] in rz) do
  17.    begin
  18.     k:=k+1;
  19.     j:=j+1;
  20.    end;
  21.   if k<mn then mn:=k;
  22.   i:=i+k;
  23.  end
  24. else i:=i+1;
  25. write('Длина самого короткого слова=',mn);
  26. readln
  27. 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

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы