Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лк04 Понятие алгоритма.doc
Скачиваний:
10
Добавлен:
07.07.2019
Размер:
159.23 Кб
Скачать

Алгоритм и его свойства Интуитивное понятие алгоритма. Свойства алгоритмов. Понятие об исполнителе алгоритма. Формы представления алгоритмов

Почти во всех сферах жизни нам приходится иметь дело с инструкциями (предписаниями, рецептами, правилами), в соответствии, с которыми можно или нужно что-то сделать.

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

Например, так:

1. Достать ключ.

2. Вставить его в замочную скважину.

3. Повернуть ключ два раза против часовой стрелки.

4. Вынуть ключ.

Или другой пример - инструкция по пользованию телефоном-автоматом.

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

Когда такие инструкции удовлетворяют определенным минимальным требованиям, говорят об алгоритме.

Наверняка можно утверждать, что каждый, из присутствующих, знаком с термином “алгоритм”. Так же, несомненно и то, что у каждого сформировалось свое (пусть даже большей частью интуитивное) понимание смысла этого термина.

Термин происходит от имени средневекового математика Абу Джафара ибн Мусы аль-Хорезми, уроженца города Хивы, жившего в IX в. н.э. Редакция последней части имени ученого в европейских языках привела к образованию термина “алгорифм” или “алгоритм”.

На основании его трудов в средние века были сформулированы основные правила арифметики. В латинском переводе все правила начинались со слов "ал-Хорезми сказал", что потом транспонировалось в "алгоритм гласит".

Европейцы, начавшие осваивать современную 10-ичную систему счисления в XII в., знакомились с трудами арабских ученых, и труд упомянутого выше жителя Хорезма, посвященный правилам счета в 10-ичной системе счисления, был широко известен (теперь это территория Узбекистана). Поэтому и наполнение термина “алгоритм” было следующим: операции над числами.

Через века старое, прежнее понимание этого термина стало утрачиваться, и данный термин стали, применять по отношению к одному единственному алгоритму – алгоритму Евклида, который предназначен для нахождения наибольшего общего делителя (НОД) пары натуральных чисел m и n.

Современное содержание понятия алгоритма можно определить следующим образом.

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

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

В данном нами определении содержатся основные понятия, связанные с алгоритмом и его главные свойства.

Схема функционирования исполнителя алгоритмов

Центральным объектом в этой системе является исполнитель алгоритмов.

Исполнитель – это тот объект (или субъект), для управления которым составляется алгоритм.

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

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

Например, выполняя инструкции, имеющиеся в кабине междугородного телефона-автомата, можно дозвониться до абонента, проживающего в другом городе. Выполняя инструкции, записанные в виде программы (это тоже форма записи алгоритма), компьютер получит результат, удовлетворяющий пользователя.

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

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

Указания выполнить конкретное действие называется командой. Основной характеристикой исполнителя, с точки зрения управления, является система команд исполнителя (СКИ) – это вся совокупность команд, которую понимает исполнитель, т.е. умеет их выполнять.

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

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