Написать программу сортировки массива по возрастанию, который был преобразован из строки

procedure fn(s:string; var r:string; var co:integer);
var i,k:integer;
begin
 i:=1;
 k:=0;
 while not (s[i] in ['0'..'9']) do inc(i);
 while s[i+k] in ['0'..'9'] do inc(k);
 r:=copy(s,i,k);
 co:=i+k-1;
end;
 
const n=10;
var
 a:array[1..n]of integer;
 s,rs:string;
 i,e,co,c:integer;
begin
 writeln('Введите целочисленный массив 1 строкой с любыми разделителями, не больше 32000, чисел - ',n);
 readln(s);
 while (length(s)>0) and (i<=10) do begin
  inc(i);
  fn(s,rs,co);
  val(rs,c,e);
  delete(s,1,co);
  a[i]:=c;
 end;
 for i:=2 to n do begin
  c:=i;
  while a[c]<a[c-1] do begin
   co:=a[c];
   a[c]:=a[c-1];
   a[c-1]:=a[c];
  end;
 end;
 writeln('Получившийся массив');
 for i:=1 to n do write(a[i]:6);
 readln;
end.

Leave a Comment

+ 58 = 60