Затем предполагаем, что первый элемент наименьший (1 задача) или наибольший (2 задача). Потом сравниваем элементы массива с переменной, в которую записали первый элемент, и меняем переменную, если условие срабатывает. Выводим результат на экран.
Как ч понял сортировка по неубыванию это сортировка по возрастанию. То есть легкие элементы всплывают наверх, а тяжелые перемещаются вниз:
//Pascal const m = 1000 var arr: array[1..m] of integer; n,i, j, k: integer; begin readln(n); write ('Исходный массив: '); for i := 1 to n do begin readln(arr[i]); end; //сортировка методом пузырька for i := 1 to n-1 do for j := 1 to n-i do if arr[j] > arr[j+1] then begin k := arr[j]; arr[j] := arr[j+1]; arr[j+1] := k end;
write ('Отсортированный массив: '); for i := 1 to n do write (arr[i]:4); end.
Алгоритм сортировки на классическом языке программирования С
# define SWAP(A,B) {A=A^B;B=A^B;A=A^B;} void bubblesort(int A[], int n) { int i, j; for(i = n-1 ; i > 0 ; i--) { for(j = 0 ; j < i ; j++) { if( A[j] > A[j+1] ) SWAP(A[j],A[j+1]); } } }
program z1;
const n=8;
var a:array [1..n] of integer;
i,m: integer;
begin
writeln ('Результаты заплыва: ');
for i:= 1 to n do
begin
write(i,'-й: ');
readln(a[i])
end;
writeln;
m:=a[i];
for i:= 1 to n do
if a[i]<m then m:=a[i];
writeln('Лучший: ',m)
end.
program z2;
const n=12;
var a:array [1..n] of integer;
i,m: integer;
begin
writeln ('Массив: ');
for i:= 1 to n do
begin
write(i,'-й элемент: ');
readln(a[i])
end;
writeln;
m:=a[i];
for i:= 1 to n do
if a[i]>m then m:=a[i];
writeln('Максимальный: ',m)
end.
Объяснение:
Сначала вводим элементы массива.
Затем предполагаем, что первый элемент наименьший (1 задача) или наибольший (2 задача). Потом сравниваем элементы массива с переменной, в которую записали первый элемент, и меняем переменную, если условие срабатывает. Выводим результат на экран.