Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
теория информатика.doc
Скачиваний:
88
Добавлен:
24.09.2019
Размер:
5.2 Mб
Скачать

12. Алгоритмизация

 

12.1 Понятие алгоритма

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

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

Слово "алгоритм" появилось в IX веке и произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса Ал-Хорезми (Alhorithmi). В своей книге "Об индийском счете" он изложил правила записи натуральных чисел с помощью арабских цифр и правила выполнения четырех арифметических действий над многозначными числами.

В настоящее время понятие алгоритма является одним из фундаментальных понятий науки информатики.

Алгоритм – точное предписание, состоящее из последовательности действий для некоторого исполнителя, ведущих к  решению задачи за конечное число шагов.

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

Исполнитель алгоритма — это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, способная выполнить действия, предписываемые алгоритмом.

Исполнителя характеризуют: среда, элементарные действия, система команд, отказы.

Среда (или обстановка) — это "место обитания" исполнителя.

Система команд исполнителя – строго заданный список команд, который может выполнять каждый исполнитель. Для каждой команды должны быть заданы условия применимости (состояние среды, в которой выполняется команда) и описаны результаты выполнения команды.

После вызова команды исполнитель совершает соответствующее элементарное действие.

Отказы исполнителя возникают, если команда вызывается при недопустимом для нее состоянии среды.

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

Основным исполнителем несложных алгоритмов является человек. При решении сложных задач в роли исполнителя часто выступает ЭВМ.

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

Команда Робота "вверх" может быть выполнена, если выше Робота нет стены. Ее результат — смещение Робота на одну клетку вверх.