uses crt;
const lb=['A'..'Z','a'..'z'];
var s:string;
i,j,mn:byte;
begin
clrscr;
repeat
j:=0;
writeln('Введите строку из латинских слов, разделенных пробелами:');
readln(s);
for i:=1 to length(s) do
if not(s[i] in lb)and(s[i]<>' ') then j:=1;
if(j=1)or(s='') then writeln('Строка введена не верно, повторите ввод.');
until(j=0)and(s<>'');
mn:=255;
i:=1;
while i<=length(s) do
if(s[i] in lb)and((i=1)or(s[i-1]=' ')) then
begin
j:=0;
while (i<=length(s))and(s[i] in lb) do
begin
i:=i+1;
j:=j+1;
end;
if j<mn then mn:=j;
end
else i:=i+1;
write('Длина самого короткого слова=',mn);
readln
end.