logo
MiI_razdatka

§11 Алгоритм и его свойства. Методика составления алгоритмов. П.1. Понятие алгоритма. Свойства алгоритмов. Способы задания алгоритмов.

Понятие алгоритма возникло и используется давно. В зависимости от характера занятий людям в своей повседневной жизни встречаются различные практические задачи: пеленание ребенка, проезд в общественном транспорте, решение квадратного уравнения, поиск слова в словаре и т.д. Важно, что при решении любой подобной задачи человек обращается к продуманным заранее со всеми возможными вариантами предписаниям (инструкциям) о том, какие действия и в какой последовательности должны быть выполнены для решения задачи. В подавляющем большинстве случаев успех любой деятельности зависит от степени продуманности действий, их последовательности и возможных вариантов. Именно с целью успешного решения какого-то определенного класса задач вырабатываются системы таких предписа­ний для использования разными людьми.

Опр 11.1.1 Алгоритм - это система точных и понятных предписаний о содержании и последовательности выполнения конечного числа действий для решения задачи.

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

Сам термин «алгоритм» ведет начато от перевода на европейские языки имени арабского математика IX в. аль-Хорезми, которым были описаны правила (в нашем понимании - алгоритмы) выполнения основных арифметических действий в десятичной системе счисления.

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

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

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

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

Свойства алгоритмов:

1. Дискретность - описываемый процесс должен быть разбит на последовательность отдельных шагов

2. Понятность - алгоритм ориентируется на определенного исполнителя и должен быть ему понятен

3. Определенность - алгоритм не должен оставлять места для произвола исполнителя

4. Массовость - применимость данного алгоритма к широкому классу задач данного типа

5. Результативность - обязательное получение результата за конечное число шагов.

Способы задания алгоритмов.

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

  1. Формулы.Математические формулы вместе с правилами их написания представляют собой своеобразный алгоритмический язык с успехом используемый для описания вычислительных алгоритмов некоторого специального вида. Например,задает алгоритм вычисления площади поверхности цилиндрического тела с диаметромd и высотойH.

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

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

  4. Графическое описание.Это представление алгоритма в виде блок-схемы.

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

Условное обозначение

Содержание действия

1

Начало алгоритма

2

Конец алгоритма

3

Ввод данных в ЭВМ

4

Вывод данных из ЭВМ

5

Арифметический блок

6

Логический блок

7

Объединяющий блок

Рис. 54

8

Шестиугольный блок цикла с параметром

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