Приложения
234
П2.5. Определение среднего арифметического тех чисел последовательности, ко-
торые удовлетворяют некоторому условию.
сумма := 0
количество := 0
нц для i от 1 до n
|Ввод очередного числа
а
...
|Если заданное условие соблюдается
если <условие>
то
|Учитываем число
а в
сумме
сумма := сумма + а
|и в количестве
количество := количество + 1
все
кц
|Подсчет и
вывод результата
среднее_арифметическое := сумма/количество
вывод нс, "Среднее арифметическое: ", среднее_арифметическое
Обратите внимание на то, что многократно определять значение
сред-
нее_арифметическое
в "теле" условного оператора необходимости нет. Это
можно сделать один раз после окончания оператора цикла. Однако может
случиться, что чисел, удовлетворяющих заданному условию, в последова-
тельности не окажется. В этом случае при
расчете будет иметь место деление
на ноль, что недопустимо. Правильное оформление:
...
|Подсчет и вывод результата
если количество > 0
то
среднее_арифметическое := сумма/количество
вывод нс, "Среднее арифметическое: ", среднее_арифметическое
иначе
вывод нс, "Чисел, удовлетворяющих условию, нет"
все
Приложение 2. Типовые задачи обработки элементов…
235
П2.6. Определение порядкового номера некоторого значения в заданной последо-
вательности.
Здесь
значение
— число, номер которого (
номер_значения
) ищется.
номер_значения := 0 |Условно
нц для i от 1 до n
|Ввод очередного числа
а
...
|Если введено требуемое значение
если a = значение
то
|Запоминаем его номер
i
номер_значения := i
все
кц
|Вывод результата
если номер_значения <> 0
то
вывод нс, "Номер этого значения: ", номер_значения
иначе
вывод нс, "Такого числа нет"
все
Возникает вопрос: какой из порядковых номеров будет найден по приведен-
ному алгоритму, если в последовательности окажется несколько чисел с ис-
комым значением?
Достарыңызбен бөлісу: