Программирование и основы алгоритмизации. Макаров В.Л. - 18 стр.

UptoLike

Составители: 

18
Рис. 2.14
1
Вывод Y
Конец
Рис. 2.14. Окончание
2.6. Алгоритмы нахождения наибольшего (наименьшего)
из множества значений
Реализация этих алгоритмов осуществляется в цикле путём сравнения неко-
торого текущего значения с наибольшим из всех предыдущих. При этом если
текущее значение больше наибольшего из всех предыдущих, то наибольшему
присваивается значение текущего. В противном случае наибольшее сохраняет
прежнее значение. Этот процесс описывается следующим образом:
или
Для применения указанной формулы при первом выполнении цикла необхо-
димо в качестве начального значения Y
max
взять заведомо небольшое число, на-
пример – (10
30)
. Тогда после первого выполнения Y
max
примет значение Y
1
, так
как Y
1
наверняка больше – (10
30
). При втором выполнении цикла Y
max
сравнива-
ется с Y
2
и находится наибольшее из Y
1
и Y
2
и так далее. Аналогичным образом
находится наименьшее среди набора элементов, при использовании формулы
Y
max
= Y
max
, если Y
i
< Y
max
.
Y
max
=Y
i
, если Y
i
> Y
max
;
или
Y
min
= Y
i
, если Y
i
< Y
min
;
Y
min
=Y
min
, если Y
i
>Y
min
.
Начальное значение переменной в этом случае следует принимать Y
min
=
10
30
.
Пример 11. Найти наибольшее значение функции
Y=abs(a) e
ax-x^2
при изме-
нении аргумента x от 0 до a с шагом h. Блок-схема алгоритма решения данного
примера приведена на рис. 2.15. Значения коэффициента а и шага h вводятся в
режиме диалога. После присвоения переменной Y
max
минимального значения
организуется цикл по переменной x, для каждого значения которой вычисляется
функция Y. На каждом шаге вычисления осуществляется сравнение значений
функций Y и Y
max
. Если Y > Y
max
, то Y
max
присваивается значение Y, в против-