Дана строка символов, состоящий из отдельных слов, разделенных пробелом. Упорядочить слова по длине (в убыванию) и вывести на печать. Даю 20 баллов.

Дана строка символов, состоящий из отдельных слов, разделенных пробелом. Упорядочить слова по длине (в убыванию) и вывести на печать. Даю 20 баллов.
Гость
Ответ(ы) на вопрос:
Гость
const nx=30; var a:array[1..nx] of string; p,i,j,n,k:integer; s,d:string;begin s:='Дана строка символов состоящий из отдельных слов разделенных пробелом';  s:= s + ' Упорядочить слова по длине в убыванию и вывести на печать'; p:=1;while p>0 do begin i:= i + 1; p:= pos(' ',s); if p>0 then a[i]:=trim(copy(s,1,p)) else a[i]:=s;writeln(a[i]);Delete(s,1,p);end; for k:=1 to i do begin for j:=2 to i do begin if length(a[j-1]) < length(a[j]) then begin d:=a[j-1];a[j-1]:=a[j];a[j]:= d;end;end;end; writeln; for k:=1 to i do writeln(a[k]);end.
Не нашли ответ?
Ответить на вопрос
Похожие вопросы