var a:array[1..1000] of integer;
n,m,i,j,k,jmx,x:integer;
begin
read(n);
for i:=1 to n do
read(a[i]);
m:=0;{количество отсортированных}
i:=1;{начало массива}
while i<n do {пока не конец - 1 }
jmx:=1; {пусть это пока индекс максимума}
for j:=1 to n-m do{с начала до уже выставленного на место максимума}
if a[j]>a[jmx] then jmx:=j;{находим индекс самого макс.}
x:=a[jmx];{запомним значение}
for k:=jmx to n-m-1 do {сдвинем на него все не отсортированные элементы}
a[k]:=a[k+1];
a[n-m]:=x;{вставим очередной максимум на место}
m:=m+1; {увеличим количество отсортированных}
i:=i+1; {идем вперед}
end;
write(a[i]:4);
end.
Объяснение:
var a:array[1..1000] of integer;
n,m,i,j,k,jmx,x:integer;
begin
read(n);
for i:=1 to n do
read(a[i]);
m:=0;{количество отсортированных}
i:=1;{начало массива}
while i<n do {пока не конец - 1 }
begin
jmx:=1; {пусть это пока индекс максимума}
for j:=1 to n-m do{с начала до уже выставленного на место максимума}
if a[j]>a[jmx] then jmx:=j;{находим индекс самого макс.}
x:=a[jmx];{запомним значение}
for k:=jmx to n-m-1 do {сдвинем на него все не отсортированные элементы}
a[k]:=a[k+1];
a[n-m]:=x;{вставим очередной максимум на место}
m:=m+1; {увеличим количество отсортированных}
i:=i+1; {идем вперед}
end;
for i:=1 to n do
write(a[i]:4);
end.
Объяснение: