Для данной сортировки используем алгоритм сортировки слиянием
В начале разбиваем арбузы на 2 группы по 2Каждую группу взвешиваем и сортируем (т.е. всего 2 взвешивания)Теперь собираем вместе, сравниваем сначала более легкие арбузы и находим самый легкий (всего 3 взвешивания)Теперь сравниваем тяжелый арбуз, что в группе с самым легким и более легкий из другой группы, и определяем второй по легкости (всего 4 взвешивания)Потом взвешиваем оставшиеся арбузы и докладываем их по порядку (всего 5 взвешивания)
Задача сводится к суммированию элементов массива V с целью нахождения их среднего арифметического. Конечно, такую задачу можно решать и без массива, поскольку нам придется все равно данные вводить с клавиатуры, но уж раз сказано, что "компоненты..." сделаем с массивом.
const n = 7; s = 'PVSCPSV';
var v: array[1..n] of double; i: integer; m: double;
begin Writeln('Вводите суммы ежедневного дохода по дням'); m := 0; for i := 1 to n do begin Write(s[i], ': '); Readln(v[i]); m := m + v[i] end; Writeln('Средний доход за неделю составляет ', m / n:0:3) end.
Тестовое решение:
Вводите суммы ежедневного дохода по дням P: 142539 V: 363135 S: 217432 C: 57395 P: 294722 S: 115390 V: 184933 Средний доход за неделю составляет 196506.571
Для данной сортировки используем алгоритм сортировки слиянием
В начале разбиваем арбузы на 2 группы по 2Каждую группу взвешиваем и сортируем (т.е. всего 2 взвешивания)Теперь собираем вместе, сравниваем сначала более легкие арбузы и находим самый легкий (всего 3 взвешивания)Теперь сравниваем тяжелый арбуз, что в группе с самым легким и более легкий из другой группы, и определяем второй по легкости (всего 4 взвешивания)Потом взвешиваем оставшиеся арбузы и докладываем их по порядку (всего 5 взвешивания)const
n = 7;
s = 'PVSCPSV';
var
v: array[1..n] of double;
i: integer;
m: double;
begin
Writeln('Вводите суммы ежедневного дохода по дням');
m := 0;
for i := 1 to n do
begin
Write(s[i], ': ');
Readln(v[i]);
m := m + v[i]
end;
Writeln('Средний доход за неделю составляет ', m / n:0:3)
end.
Тестовое решение:
Вводите суммы ежедневного дохода по дням
P: 142539
V: 363135
S: 217432
C: 57395
P: 294722
S: 115390
V: 184933
Средний доход за неделю составляет 196506.571