Алгоритм
1. Основные термины и понятия
Алгоритм – точное описание последовательности действий (команд) для решения задачи.
Алгоритм – это понятное и точное предписание исполнителю при заданных начальных данных выполнить конечную последовательность команд, приводящую к искомому результату.
Исполнитель алгоритма – это тот объект или субъект, для управления которым составлен алгоритм (человек или машина).
Система команд исполнителя (СКИ) – это вся совокупность команд, которые данный исполнитель умеет выполнять.
Алгоритм использует набор данных (из числа допустимых) и должен в итоге дать результат, который полностью определяется начальными данными.
2. Свойства алгоритма
Любой алгоритм должен обладать следующими свойствами:
понятностью: команды алгоритма должны быть понятны исполнителю. Для записи алгоритма в этом случае применяют систему команд – набор правил записи команд, понятных исполнителю алгоритма;
результативностью: при корректных начальных данных алгоритм должен заканчивать работу и давать результат. Более строгие требования предполагают успешное завершение алгоритма даже при некорректных начальных данных (например: завершение работы с выдачей сообщения об ошибке);
корректностью: алгоритм, созданный для решения определенной задачи, должен давать возможность получения результата при различных допустимых исходных данных;
определенностью: команды, образующие алгоритм, должны быть однозначными. При одних и тех же исходных данных алгоритм должен давать стабильный результат;
дискретностью: процесс решения задачи должен быть представлен в виде последовательности шагов, каждый из которых можно назвать командой или инструкцией.
3. Выполнение алгоритма
Алгоритм описывает правила, следуя которым, можно получить решение задачи, используя исходные данные, и для этого алгоритм необходимо выполнить. Особенность алгоритма в том, что он исполняется формально. Знать, для чего предназначен алгоритм, не требуется. Формальное выполнение команд в заданной последовательности позволяет поручить осуществление алгоритма не человеку, а машине.
При создании алгоритма процесс решения задачи расчленяют на мелкие операции. Машина способна реализовать эти операции в последовательности, указанной в алгоритме. Эта идея лежит в основе автоматических устройств и автоматизации деятельности человека.
Особое место среди подобных автоматических устройств занимает компьютер. Говорят, что компьютер исполняет программу, реализующую алгоритм.
4. Способы записи алгоритма
Алгоритмы создаются и разрабатываются людьми, хотя обычно предназначены для автоматического выполнения. Поэтому первоначальная запись алгоритма обычно производится в форме, доступной для восприятия человеком.
Существуют следующие формы представления алгоритма:
словесная: в этом виде алгоритм представляет собой описание последовательности этапов обработки данных, изложенное в произвольной форме. Эта форма удобна для человеческого восприятия, но страдает многословностью и неоднозначностью;
графическая: алгоритм изображается как последовательность функциональных блоков, соответствующих одной или нескольким командам алгоритма (блок-схема);
на языках программирования: алгоритм, записанный на языке программирования.
Отказ от естественного языка требует частичной формализации способа записи алгоритма и использования стандартных приемов построения алгоритмов в виде комбинаций базовых алгоритмических структур. Таких базовых структур всего три: следование, ветвление и цикл. Характерной особенностью всех базовых структур является наличие одного входа и одного выхода.
