Program Dlina_slova;
Uses crt;
type strings=array[1..90] of string;
var predl:string;
slovo:strings;
k:integer;
procedure GetWords(s:string; var words:strings, var count:integer);
var n,i:integer;
begin
n:= length (predl);
count:=1;
words[count]:='';
i:=1;
While i<=n do
If predl[i]<>' 'then {символ не пробел}
begin
words[count]:=words[count]+s[i];
i:=i+1;
end
else
begin
count:=count+1;
words[count]:='';
While (predl[i]=' ') and(i <=n) do
i:=i+1;
end;
end;
procedure OutputWoeds(words:strings; count:integer);
var i:intger;
begin
for i:=1 to count do
writeln(words[i]);
end;
procedure sort(var words:strings; coutn:integer);
var s:string;
i,j:integer;
begin
for j:=1 to count-1 do
for i:=1 to count-1 do
if length(words[i])>length(words[i+1]) then
begin
s:=words[i];
words[i]:=words[i+1];
words[i+1]:=s;
end;
end;
begin
clrscr;
Writeln('Вводите предложение ');
Readln(predl);
GetWords(predl,slovo,k);
Writeln('Слова из предложения');
OutputWords(slovo,k);
sort(slovo,k);
Writeln('Самое длинное слово ');
Writeln(slovo[k]);
Writeln('Длина этого слова ',length(slovo[k]));
readln;
readln;
end.