Решение: var f:text; text,str,max:string; i,n:integer; begin assign(f,'input.txt'); reset(f); readln(f,text); while not Eof(f) do begin readln(f,str); text:=text+' '+str; end; close(f); i:=0; while text[i]<>' ' do inc(i); max:=copy(text,1,i-1); inc(i,-1);{Первое слово принимаем за максимальное} REPEAT inc(i);if text[i]=' ' then begin inc(i); n:=i; while (text[i]<>' ') and (i<>length(text)) do inc(i); str:=copy(text,n,i-n); if length(str)>length(max) then max:=str; inc(i,-1); end; {Если текущее слово длинее максимального, принимаем его за максимальное} UNTIL i=length(text); assign(f,'output.txt'); rewrite(f); write(f,max); close(f); end.