Алгоритмы и способы их описания.

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

Алгоритму присущи следующие свойства:

- дискретность – разбиение алгоритма на отдельные элементарные действия;

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

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

- массовость – пригодность алгоритма для решения определённого класса задач.

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

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

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

Блок 1 называется ПРОЦЕСС (блок обработки). Он обозначает одно или несколько последовательных действий, изменяющих значение или форму представления данных. Содержание этих действий записывается внутри блока.

Блок 2 называется МОДИФИКАЦИЯ. Он указывает начало циклической конструкции. Внутри блока записываются начальное и граничное значения, а также правило изменения параметра цикла.

Блок 3 называется ВВОД/ВЫВОД. Внутри блока пишется "ввод" или "вывод" и перечисляются переменные, подлежащие вводу или выводу на печать.

Блок НАЧАЛО/КОНЕЦ обозначает входы в схему алгоритма и выходы из нее. Этими блоками начинается и заканчивается каждая схема алгоритма.

Блок 5 называется РЕШЕНИЕ. Блок обозначает передачу управления по условию. Само условие указывается внутри блока. Стрелки, выходящие из блока, помечаются результатом проверки условия – "Да" и "Нет", соответственно.

Если описание содержания действий не умещается внутри блока, то используется комментарий (рис. 1,6). Кроме того, комментарий используется для дополнительного пояснения, описания содержания подпрограмм, формул и т.п.

 
 


а = 10; 15; 20 . . . мм;

b = 1,5 * а

Рис.1. Условное обозначение алгоритмических схем.

Блок 7 называется ПРЕДОПРЕДЕЛЕННЫЙ ПРОЦЕСС (вызов модуля). Обозначает он вычисления по подпрограмме.

Соединители (рис. 1,8) используются, когда схема алгоритма не умещается на одном листе или для избегания пересечений линий переходов. Внутри соединителей ставятся цифры, по которым определяются соединяющие ветви и блоки. Кружок используется внутри отдельной страницы, а флаг – при переходе на другую станицу.

Отдельные блоки алгоритмов соединяются между собой линиями перехода (рис. 1,9). Эти линии обозначают порядок выполнения действий. Стрелки устанавливаются только на не основных направлениях и в конце пути. За основные приняты направления слева направо и сверху вниз.

На блок-схеме алгоритма блоки нумеруются (кроме блоков НАЧАЛО и КОНЕЦ) сверху вниз и справа налево. Каждый блок соответствует выполнению одного или нескольких операторов.

Оператор –этоформальная запись инструкций по выполнению некоторой последовательности действий.

Графическая форма представления алгоритмов является наиболее компактной и наглядной, в связи с чем, нашла широкое применение.

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

Алгоритм, записанный на языке программирования, называется программой.