Приложение 2. Типовые задачи обработки элементов…
237
Так, например, если известно, что в обрабатываемой последовательности чи-
сел
отрицательных значений нет, то можем записать:
максимальное := 0
нц для i от 1 до n
|Ввод очередного числа
а последовательности
...
если a > максимальное
то
максимальное := а
все
кц
|Вывод результата или использование его в расчетах
...
П2.8. Определение порядкового номера максимального значения в последо-
вательности чисел.
Здесь также алгоритм решения задачи аналогичен алгоритму действий чело-
века, определяющего номер максимального значения в некоторой последо-
вательности:
4, 2, 9, 6, 3, 16, 10, 2, 7
Сначала он запоминает первое число и число 1, а
затем рассматривает второе
число. Если оно больше того числа, которое помнил, то запоминает новое
число и число 2 и переходит к следующему, в противном случае просто пе-
реходит к следующему, третьему, числу и делает то же самое и т. д.
В программе сначала следует задать первое число и принять его в качестве
максимального (
максимальное
), а искомый порядковый номер (
но-
мер_максимального
) принять равным 1. Затем задаются остальные числа
а
и
каждое из них сравнивается со значением
максимальное
. Если
a > максимальное
, то в качестве нового значения
максимальное
принима-
ется значение числа
a
, а в качестве нового значения
но-
мер_максимального
— номер
встреченного числа
i
.
|Ввод первого числа
а последовательности
...
|Принимаем его в
качестве значения максимальное
максимальное := а
|А его номер (1) — в качестве значения
номер_максимального
номер_максимального := 1
нц для i от 2 до n
|Ввод остальных чисел
а последовательности
...
Приложения
238
если a > максимальное
то
максимальное := а
номер_максимального := i
все
кц
|Вывод результата или использование его в расчетах
...
Если минимальное число обрабатываемой последовательности известно, то,
как и в
предыдущей задаче, фрагмент может быть оформлен короче:
максимальное := минимальное
нц для i от 1 до
n
|Ввод очередного числа последовательности
а
...
если а > максимальное
то
|Новым значением
максимальное будет очередное число
а
максимальное := а
|А новым значением
номер_максимального
|- номер
i очередного числа
номер_максимального := i
все
кц
Здесь
минимальное
— минимальное число последовательности.
Достарыңызбен бөлісу: