В массиве, состоящем из положительных и отрицательных чисел, определить, сколько элементов превосходят по модулю максимальный элемент.
a - массив;
max - максимальный элемент массива;
count - количество элементов, превосходящих по модулю максимальный.
Сначала необходимо найти максимальный элемент массива. После чего сравнивать с ним модули элементов массива, и если модуль больше, то увеличивать счетчик количества учитываемых элементов.
Следует отметить, что сравнивать достаточно только модули отрицательных элементов, т.к. среди положительных найденный максимум в любом случае самый большой. Однако для простоты кода проверяются все элементы.
const N = 20; var a: array[1..N] of integer; max: integer; i, count: byte; begin randomize; max := -16; for i:=1 to N do begin a[i] := random(30)-15; write(a[i],' '); if a[i] > max then max := a[i]; end; writeln; count := 0; for i:=1 to N do if abs(a[i]) > max then count := count + 1; writeln(count); end.
Пример выполнения программы:
1 6 -14 6 12 11 4 -2 -15 -8 7 -8 -5 3 -7 -15 -6 -9 3 1 3
Максимальный элемент здесь - это число 12. Больше него по модулю -14 и два числа -15.
Последние комментарии
17 часов 46 мин. назад
18 часов 53 мин. назад
1 день 5 часов назад
3 дня 11 часов назад
5 дней 5 часов назад
5 дней 21 час назад
6 дней 7 часов назад
6 дней 8 часов назад
6 дней 20 часов назад
1 неделя 10 часов назад