Замечание 2. Если нужно суммировать или перемножать не все
элементы массива, а только лишь те, для которых выполняется заданное
условие, то перед суммированием (умножением) необходимо проверять это
условие, и выполнять суммирование (умножение) только тогда, когда
условие выполняется. Такой случай рассмотрен в примере 5.2.
Замечение 3. Определение количества элементов массива, значения
которых удовлетворяют некоторому условию (например, x
i
>0)
осуществляется по алгоритму, во многом схожему на алгоритм вычисления
суммы. Обозначим количество через K.
Тогда:
1. Зададим K=0.
2. Организуем цикл по i=1,2, …, N на каждом шаге которого будем
проверять выполнение условия для i-элемента массива. В случае,
если условие выполняется производим действие K=K+1.
Пример 5.2. Найти среднее арифметическое положительных чисел
среди элементов массива, стоящих на нечетных местах и произведение чисел
массива, меньших заданного С.
Решение. Особенностью данной задачи является то, что она состоит из
2-х подзадач, осуществляющих обработку элементов одного и того же
массива:
1) Вычисление среднего арифметического положительных чисел. Для ее
решения понадобиться цикл по i=1,3,5,…,N, т.е. с шагом изменения =2.
Среднее арифметическое можно вычислить по формуле
, где S –
сумма положительных чисел, стоящих на нечетных местах, а K-их
количество. Перед его вычислением нужна проверка условия K≠0, т.к. в
противном случае (когда таких чисел нет) расчет m невозможен.
2) Вычисление произведения чисел, меньших заданного С. Для ее
решения нужен цикл по i=1,2,…,N. А чтобы убедиться, что числа < C в
массиве были, введем в схему дополнительную величину t. Перед
началом вычисления произведения установим для нее значение =0, а
как только будет найдено значение элемента массива < C, установим
t=1. Таким образом, t играет роль сигнала о наличии в массиве чисел <
C. Схема алгоритма приведена на рис.5.6.