Для данной сортировки используем алгоритм сортировки слиянием
В начале разбиваем арбузы на 2 группы по 2Каждую группу взвешиваем и сортируем (т.е. всего 2 взвешивания)Теперь собираем вместе, сравниваем сначала более легкие арбузы и находим самый легкий (всего 3 взвешивания)Теперь сравниваем тяжелый арбуз, что в группе с самым легким и более легкий из другой группы, и определяем второй по легкости (всего 4 взвешивания)Потом взвешиваем оставшиеся арбузы и докладываем их по порядку (всего 5 взвешивания)
Для данной сортировки используем алгоритм сортировки слиянием
В начале разбиваем арбузы на 2 группы по 2Каждую группу взвешиваем и сортируем (т.е. всего 2 взвешивания)Теперь собираем вместе, сравниваем сначала более легкие арбузы и находим самый легкий (всего 3 взвешивания)Теперь сравниваем тяжелый арбуз, что в группе с самым легким и более легкий из другой группы, и определяем второй по легкости (всего 4 взвешивания)Потом взвешиваем оставшиеся арбузы и докладываем их по порядку (всего 5 взвешивания)исходный код на языке программирования pascal
const n = 10;
var
a: array[1..n] of integer;
i: byte;
avrg: real;
sum: integer;
begin
randomize;
for i: =1 to n do a[i]: =random(50)+1;
sum : = 0;
for i: =1 to n do sum : = sum + a[i];
avrg : = sum/n;
// весь массив
for i: =1 to n do write(a[i]: 3);
writeln;
writeln('среднее арифм.: ',avrg: 4: 2);
// больше avrg
for i: =1 to n do if a[i]< avrg then write(a[i]: 3);
writeln;
end.
пример(ы) выполнения программы на языке pascal
13 23 45 2 9 28 47 30 18 12
среднее арифм.: 22.70
13 2 9 18 12