Свойства алгоритма и его исполнители (9 класс)

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

Алгоритм приготовления блюда быстрого питания:

  1. Высыпать в емкость содержимое пакетика.
  2. Налить в емкость 200 мл горячей воды.
  3. Тщательно перемешать.

Дискретность.
Алгоритмы кулинарных рецептов состоят из отдельных действий, которые обычно нумеруются. Разделение алгоритма на последовательность шагов является важным свойством алгоритма и называется дискретностью.

Результативность.
Алгоритмами являются известные из начальной школы правила сложения, вычитания, умножения и деления столбиком. Применение этих алгоритмов независимо от количества разрядов в числах и, соответственно, количества вычислительных шагов алгоритма всегда приводит к результату. Получение из исходных данных результата за конечное число шагов называется результативностью алгоритма.

Алгоритм сложения целых чисел в десятичной системе счисления:

  1. Записать числа в столбик, так чтобы цифры самого младшего разряда чисел (единицы) расположились одна под другой (на одной вертикали).
  2. Сложить цифры младшего разряда.
  3. Записать результат под горизонтальной чертой на вертикали единиц, если при этом полученная сумма больше или равна величине основания системы счисления (в данном случае 10), перенести десятки в старший разряд десятков.
  4. Повторить пункты 2 и 3 для всех разрядов с учетом переносов из младших разрядов.

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

Само слово «алгоритм» происходит от «algorithmi» — латинской формы написания имени выдающегося математика IX века аль-Хорезми, который сформулировал правила выполнения арифметических операций.

Исполнители алгоритмов.
Алгоритмы широко используются в технике в системах управления объектами. В любой системе управления существует управляющий объект, который является исполнителем алгоритма управления. Так, в системах терморегуляции для поддержания определенной температуры в помещении исполнителем алгоритма может являться как человек, так и микропроцессор.

Алгоритм терморегуляции:

  1. Измерить температуру в помещении.
  2. Если измеренная температура ниже заданной, включить обогреватель.

Детерминированность.
При управлении самолетом используются сложные алгоритмы, исполнителями которых являются пилот или бортовой компьютер. Последовательность выполнения действий, например, при взлете должна быть строго определенной (например, нельзя отрываться от взлетной полосы, пока самолет не набрал необходимую взлетную скорость). Исполнитель алгоритма, выполнив очередную команду, должен точно знать, какую команду необходимо исполнять следующей. Это свойство алгоритма называется детерминированностью.

Выполнимость и понятность.
После включения компьютера начинают выполняться алгоритмы тестирования компьютера и загрузки операционной системы. Исполнителем этих алгоритмов является компьютер, поэтому они должны быть записаны на понятном компьютеру машинном языке.
Каждый исполнитель обладает определенным набором, системой команд, которые он может выполнить. Алгоритм должен быть понятен исполнителю, т. е. должен содержать
только те команды, которые входят в систему его команд.

Выше были приведены примеры алгоритмов из различных областей человеческой деятельности и знаний. В этих алгоритмах различные исполнители выполняли операции над объектами различной природы (материальными объектами и числами). При этом во всех примерах можно выделить следующие основные свойства алгоритма:

  • Результативность и дискретность. Алгоритм должен обеспечивать получение из исходных данных результата за конечное число дискретных шагов.
  • Массовость. Один и тот же алгоритм может применяться к большому количеству однотипных объектов.
  • Детерминированность. Исполнитель должен выполнять команды алгоритма в строго определенной последовательности.
  • Выполнимость и понятность. Алгоритм должен содержать команды, входящие в систему команд исполнителя и записанные на понятном исполнителю языке.
Алгоритм — это описание детерминированной последовательности действий, направленных на получение из исходных данных результата за конечное число дискретных шагов с помощью понятных исполнителю команд.

Формальное исполнение алгоритма.
Из приведенных выше свойств алгоритма вытекает возможность его формального выполнения. Это означает, что алгоритм можно выполнять, не вникая в содержание поставленной задачи, а только строго выполняя последовательность действий, описанных в алгоритме.

Контрольные вопросы:

  1. Приведите примеры известных вам алгоритмов.
  2. Перечислите основные свойства алгоритмов и проиллюстрируйте их примерами.
  3. Как вы понимаете формальное исполнение алгоритма?

Задания:

  • Записать алгоритм вычитания столбиком целых чисел в десятичной системе счисления.

Содержание