Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика / Основы теории алгоритмов.doc
Скачиваний:
204
Добавлен:
10.02.2015
Размер:
611.84 Кб
Скачать

Основы теории алгоритмов.

1.1. Подходы к определению понятия алгоритма

Понятие алгоритма нашло широкое применение в математике, информатике, кибернетике и других научных дисциплинах. Его происхождение связывают с известным именем средневекового (IX век) математика — Абу Джафар ибн Мусса аль-Хорезми. Считается, что редакция части имени «аль-Хорезми» в европейских языках привела к образованию термина «алгорифм» или «алгоритм». Последнее слово происходит от латинской формы algorithmi — представляющей написание имени знаменитого математика. В Европе он известен по трудам, посвященным правилам счета в десятичной системе счисления. Отсюда — следующее содержание этого понятия.

Алгоритм — операции над числами; правила выполнения арифметических действий над многозначными числами.

В последующем содержание алгоритма стало рассматриваться по отношению к алгоритму Евклида.

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

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

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

Алгоритм — система вычислений, которая для некоторого класса математических задач из записи А «условий» задачи позволяет при помощи однозначно определенной последовательности операции получить запись В «решения» задачи.

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

Алгоритм — точное предписание, начинающееся с произвольного исходного данного и направленное на получение полностью определенного этим исходным данным результата.

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

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

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

Алгоритм, реализующий вычислительные операции, называется вычислительным алгоритмом.

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

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

Важно отметить, что в настоящее время содержание понятия алгоритма связано с автоматизацией поведения исполнителя-автомата, реализуемого на основе алгоритма. А задача разработки алгоритмов является одним из этапов разработки соответствующей программы для ЭВМ, обеспечивающей однозначное и точное следование её предписаниям для получения определенного результата. Здесь ЭВМ является исполнителем алгоритма. Однако содержание понятия исполнителя может иметь более широкий смысл в силу того, что исполнителем может быть не только ЭВМ, но и человек, группа людей, робот, язык программирования и др. Однако, несмотря на многообразие форм исполнителя и сложности получения его формального представления, он обладает важными свойствами:

  • способен выполнять команды, составляющие систему команд исполнителя;

  • не вникает в смысл выполняемых команд алгоритма, выполняя их в заданной последовательности;

  • получает необходимый результат;

  • строго выполняет заданные правила, инструкции.

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

Алгоритм — понятное и точное предписание исполнителю совершать последовательность действий, направленных на достижение поставленной цели.

К алгоритмам предъявляются требования, отражающие по содержанию свойств алгоритма, которые будут рассмотрены ниже.

Соседние файлы в папке Информатика