Читайте также:
|
|
Дано n чисел. Требуется найти в этой последовательности максимальное число. Алгоритм метода решения сформулируем в следующем виде:
1. в некоторой памяти М запоминаем первое число;
2. следующие числа последовательности сравниваем с числом, хранящимся в М, и записываем в М большее из этих чисел (т. е. прежнее число, если оно окажется больше, либо вместо него следующее число);
3. повторяем второй шаг до конца данной последовательности.
Сложность приведенного алгоритма также линейна (каждое из и чисел просматривается только один раз, и при этом совершается не более пяти операций).
Пример 1.13. Ежедневные замеры влажности почвы в течение месяца дали следующие результаты: V,, V2,..., V31. Определить наименьшую наблюдавшуюся влажность почвы и число месяца, когда она была зарегистрирована в первый раз.
Для решения задачи необходимо найти наименьший элемент массива V,, V2,..., V3| и его порядковый номер в массиве. Схема алгоритма приведена на рис. 1Л 8. В алгоритме в качестве начального значения переменной М, отслеживающей наименьший элемент, принято значение первого элемента массива и, соответственно, переменная К, указывающая месторасположение наименьшего элемента, принимает значение 1. Далее все элементы V, (со 2-го по 31-й) в цикле сравниваются с М. При этом если очередной элемент массива меньше М, то переменная М становится равной значению этого элемента, а номер его месторасположения присваивается К. По завершении цикла переменной М будет присвоено значение наименьшего элемента массива, а переменной К - номера первого наименьшего элемента.
Определение кратности чисел. Для определения кратности чисел какому-то заданному числу N используют проверку на равенство результатов, полученных при делении проверяемого числа на заданное число М (при N=2 в схеме обозначенное как 1/2) и при целочисленном делении этих чисел (нахождении целой части числа, получаемого от деления двух целых операндов, в схеме обозначенное как [1/2]). Если полученные результаты совпадают, то проверяемое число кратно числу N, в противном случае - нет.
Пример 1.14. Дан натуральный ряд чисел от 1 до N. Вычислить сумму четных и произведение нечетных чисел этого ряда. Схема алгоритма представлена на рис. 1.19.
Дата добавления: 2015-07-14; просмотров: 57 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Типовые приемы алгоритмизации | | | Удаление и вставка членов последовательности. |