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

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

Понятие алгоритма. Словесное задание алгоритмов

Понятие алгоритма первично. Словесно алгоритм можно определить как последовательность точно сформулированных и однозначно определенных действий по решению поставленной задачи. Данные основные свойства алгоритмов обеспечивают практическую возможность их выполнения (и, соответственно, решения задач) при помощи вычислительных машин. Исторически термин «алгоритм» произошло от имени великого среднеазиатского ученого 8–9 вв. Аль-Хорезми как его перевод на латинский язык (Хорезм – область современного Узбекистана).

1. Понятность и однозначность.Все действия алгоритма должны быть понятны его исполнителю и допускать единственное толкование.

2. Детерминированность.Для одинаковых входных данных алгоритма выдает строго определенные одинаковые выходные данные.

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

4. Результативность. Алгоритм выдаёт уникальный и предполагаемый результат для заданных входных данных.

1. Словесное описание - используется естественный язык.

2. Графическое. С помощью специальных изображений, которые называют блок—схемами.

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

С учетом введенных обозначений множеств Е и R задача алгоритма заключается в определении выходных данных (результата задачи R) по ее заданным входным данным (аргументам Е). Обозначим алгоритм решения задачи через А. Тогда связь множеств Е и R с помощью А можно условно представить в следующем виде: R = А(Е).

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

В качестве примеров словесного описания алгоритмов рассмотрим задачи из примеров 1 и 2 п. 1.1.

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

Решение. Зависимость результата от аргументов задачи R = А(Е) в данной задаче принимает форму: {S} = А({a,b}). Последовательность действий по получению S состоит всего из одного шага – умножения a на b и присваиванию полученной величины переменной S: S = a ´ b. Таким образом, словесно искомый алгоритм А можно представить в виде следующей записи:

Шаг 1. S = a ´ b.

Действия, выполняемые алгоритмом, составляют тело алгоритма. В примере 3 дано тело алгоритма. Полным описанием алгоритма А называют совокупность, состоящую из:

I) названия алгоритма с указанием аргументов Е и результатов задачи R;

II) вспомогательная информация (комментарий), поясняющая назначение алгоритма;

III) тело алгоритма.

Таким образом полное описание алгоритма наряду с описанием задачи содержит метод ее решения (тело алгоритма) и поясняющие комментарии к нему.

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

Решение. Зависимость результата от аргументов задачи имеет вид: {М_min, i_min}=А({n,М[1:n]}). Для решения задачи путем перебора вначале в качестве минимального элемента примем первый элемент массива, а затем будем сравнивать его со всеми последующими элементами, при необходимости уточняя его. Для перебора элементов массива используем вспомогательную целочисленную переменную i . Словесно искомый алгоритм А представим в виде набора из 5 шагов. Вставляя перед телом алгоритма его название и поясняющий комментарий, получим его полное словесное описание:

I Название алгоритма, аргументы Е и результаты R. Алгоритм определения величины и номера минимального элемента в вещественном числовом массиве. Аргументы: Е = {n, М[1: n]}, результаты R ={М_min, i_min}.

II Комментарий.Решение задачи производится путем перебора элементов массива.