Определить длину самого короткого слова в строке
Задача
Дана строка, состоящая из слов, разделенных пробелами и знаками препинания. Определить длину самого короткого слова.
Решение
Описание переменных:
- w - длина очередного слова
- min - длина самого короткого слова
Алгоритм решения задачи:
- Если очередной символ строки является буквой, то увеличить значение переменной w.
- Иначе
- проверить не меньше ли значение w (при этом значение w не должно быть равно 0) чем min; если это так, то перезаписать значение min;
- обнулить значение w.
Программа на языке Паскаль:
var s: string; i,w,min: byte; begin readln(s); w := 0; // длина очередного слова min := 255; for i:=1 to length(s) do if (s[i] >= 'a') and (s[i] <= 'z') then // if s[i] <> ' ' then в общем случае w := w + 1 else begin if (w < min) and (w <> 0) then min := w; w := 0 end; writeln('The shortest word: ', min); end.
Пример выполнения программы:
hi! say bigest The shortest word: 2
Комментарии
Как сделать чтобы в…
Для русских и английский букв.
Считает длину только первого слова
Последнее слово вообще не…