Пример 1.

Рассмотрим процесс алгоритмизации на том же примере поиска максимального числа из последовательности из N чисел.

Определимся с алгоритмической системой. Для этого, проанализируем исходные данные, исходными данными у нас будут представлены как:

  1. N - количество элементов последовательности. В качестве типа объектов, представляющих исходных данных определяем множество целых чисел. Сразу заметим, что количество должно быть положительным, то есть строго больше нуля.
  2. M – сама последовательность чисел. В качестве типа объектов, представляющих исходных данных определяем множество вещественных чисел.

Далее определимся с результатами, которые будут получены в процессе выполнения алгоритма результаты выполнения алгоритма у нас будут представлены как:

  1. Mmax – максимальное число из заданной последовательности.

Свойства исполнителя, такие как инструменты и язык пока учитывать не будем.

Построим математическую модель, то есть опишем процесс поиска языком математических формул:

Математическая модель процесса поиска максимального числа из последовательности вещественных чисел M размерностью N построена.

Разрабатываем алгоритм в виде описательных инструкций:

  1. Начало алгоритма;
  2. Получить количество элементов последовательности N и саму последовательность M.
  3. Присвоить значению Mmax, значение элемента последовательности M1.
  4. Присвоить счетчику элементов i – значение равное двум. Начинаем перебор со второго элемента, так как первый у нас уже и так считается максимальным.
  5. Если не дошли до конца массива, то есть i<=N, то:
    1. Если Mi > Mmax, то считаем это элемент максимальным Mmax = Mi.
    2. Переходим к следующему элементу, для этого увеличиваем значение номера элемента i на единицу.
    3. Переходим к пункту 5.
  6. Записываем результат работы алгоритма Mmax;
  7. Конец алгоритма.

Итак, мы разработали алгоритм, с помощью которого можно найти максимальное число в последовательности M имеющей количество элементов N.

Следующим этапом идет проверка правильности работы алгоритм. Для этого возьмем произвольную последовательность {1,6,2} размерностью 3 и «проиграем» этот алгоритм пошагово, заранее зная ответ (Mmax=6):

ü Начало алгоритма;

ü Получаем количество элементов последовательности N=3 и саму последовательность M={1,6,2};

ü Присваиваем Mmax значение первого элемента Mmax= M1=1;

ü Присваиваем счетчику элементов значение номера второго элемента i=2;

ü Не дошли до конца последовательности? 2<=3? «да»;

ü Сравниваем текущий элемент с максимальным Mi> Mmax? или 6>1? «да», значит тот элемент который мы считали максимальным таковым не является. Теперь будем считать максимальным второй элемент последовательности Mmax= Mi= M2=6;

ü Увеличиваем значение счетчика элементов на единиц i=i+1, то есть теперь значение счетчика равно 3;

ü Не дошли до конца последовательности? 3<=3? «да»;

ü Сравниваем текущий элемент с максимальным Mi> Mmax? или 2>6? «нет», не выполняем никаких действий;

ü Увеличиваем значение счетчика элементов на единиц i=i+1, то есть теперь значение счетчика равно 4;

ü Не дошли до конца последовательности? 4<=3? «нет»;

ü Записываем результат работы алгоритма. На данном шаге получили, что Mmax=6.

ü Конец алгоритма.

В результате пошагового выполнения алгоритмы мы получили то же саамы ответ, что и знали заранее, следовательно алгоритм работает правильно и его можно использовать для других последовательностей.

Следующим этапом построения алгоритма, является подготовка его для передачи на дальнейшую обработку, то есть для перевода на язык исполнителя. Для этого создаем его графическое представление, или блок-схему, рисунок 11.

Итак, задание по разработке алгоритма, поиска максимального числа из последовательности чисел размерности N выполнено.