Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебное пособие 1 курс 1 часть Информатика .doc
Скачиваний:
111
Добавлен:
10.06.2015
Размер:
38.59 Mб
Скачать

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

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

Обработка информации — получение одних информационных объектов из других информационных объектов путем выполнения некоторых алгоритмов.

Понятие «алгоритм» так же, как и понятие «информация» относится к фундаментальным неопределяемым понятиям информатики, а также математики. Свое происхождение термин «алгоритм» берет от имени узбекского ученого, жившего в XII веке в Ташкенте – Абу Мухаммед ибн Муса аль-Маджус аль-Хорезми, который разработал правила письменных арифметических вычислений для чисел, записанных в позиционной десятичной системе счисления. В процессе перевода его научного труда на латинский язык имя автора было усечено до последней компоненты и трансформировано (в силу фонетических особенностей латиницы) в слово "Algorithmi", которым долгое время обозначались изобретенные им методы вычислений.

В наши дни этот термин имеет другое смысловое наполнение:

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

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

В качестве исполнителя алгоритма могут выступать: человек, животное и автоматическое устройство. В информатике универсальным исполнителем алгоритмов является компьютер.

Исполнителя характеризуют:

  • среда (или обстановка) – "место обитания" исполнителя;

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

  • элементарные действия – то, что исполнитель совершает после вызова соответствующей команды;

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

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

Изучение алгоритмов является спецификой науки о вычислениях. В последнее время здесь были достигнуты значительные успехи. К числу основных свойств алгоритма относятся:

  • Понятность (доступность) – алгоритм должен учитывать специфику исполнителя и, при необходимости, ему должны предоставляться дополнительные сведения;

  • Дискретность (раздельность) – выполнение каждого очередного шага алгоритма должно начинаться только после полного завершения предыдущего шага;

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

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

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

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

На практике используются следующие формы представления алгоритмов:

  • Словеснаязапись(не формализованная запись алгоритма на естественном языке, например, рецепт приготовления манной каши);

  • Блок-схема (наиболее наглядная графическая форма представления алгоритмов, используемая профессионалами особенно в тех случаях, когда алгоритм обладает изощренной логикой исполнения);

  • Псевдокоды(язык программирования для бедных, когда нет возможности преподавать основы алгоритмизации с использованием ЭВМ – полуформализованные описания алгоритмов, включающий в себя как элементы «птичьего» языка программирования);

К алгоритмам также относится компьютерная программа. Компьютерная программа (жестко формализованная запись алгоритма, ориентированная на исполнителя – ЭВМ). Для разработки компьютерных программ используются инструментальные средства, называемые языками программирования