Напечатать все слова в предложении, имеющие длину от 5 до 10 символов — Pascal(Паскаль)

uses crt;
var s,s1:string;
    n,i,k:byte;
begin
clrscr;
writeln('Введите последовательность слов, разделенных пробелами');
readln(s);
i:=1;n:=0;
writeln('Слова от 5 до 10 букв:');
while i<length(s) do
if (s[i]<>' ')and ((s[i-1]=' ')or(i=1)) then{если буква, а перед ней пробел, или она первая}
 begin
  k:=i;s1:='';
  while (s[k]<>' ')and(k<=length(s))do {пока не пробел и не конец строки}
   begin
    s1:=s1+s[k];
    k:=k+1;{идем вперед}
   end;
  if length(s1) in [5..10] then
   begin
    writeln(s1);
    n:=1;
   end;
  i:=i+length(s1);{перепрыгиваем}
 end
else i:=i+1;
if n=0 then write('Таких слов нет.');
readln
end.

Leave a Comment

+ 75 = 78