Мне с pascal. не сложно, но у меня не получается. заранее !

Lol2288502 Lol2288502    2   04.01.2020 22:47    0

Ответы
nastusya1709 nastusya1709  10.10.2020 23:53

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.

Объяснение:

ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика