Способы записи алгоритма

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

- словесная запись;

- псевдокод;

- язык программирования;

- графическая запись (блок-схемы).

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

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

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

В отличие от языков программирования, на синтаксис псевдокода обычно не устанавливается стандартов, так как последний непосредственно не компилируется в исполняемую программу. Поэтому автор каждый публикации обычно применяет свой оригинальный псевдокод, однако чтобы быть максимально понятным читателям, авторы публикаций содержащих псевдокод, как правило, заимствуют нужные им конструкции из какого-либо языка программирования. Так, например, очень часто используется синтаксис, похожий на синтаксис языка Паскаль. Это объясняется тем, что Паскаль создавался как язык, ориентированный на задачи обучения программированию, и поэтому синтаксис этого языка особенно приспособлен для восприятия человеком. Часто используются и другие языки: Си, Алгол, Фортран и другие. Далее записи алгоритмов будет использоваться как псевдокод, так и язык Turbo Pascal.

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

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

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

Большинство из языков программирования относятся именно к алгоритмическим языкам.

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

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

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

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

Изображение схемы производится с использованием стандартного набора символов. Основные из них приведены в таблице 6.1.

Таблица 6.1 –Наименования, обозначения и функции основных символов блок-схемы

Наименование Обозначение Функция
Процесс     Выполнение операций над данными
Терминатор   Начало и конец алгоритма, прерывание процесса
Предопределенный процесс   Процесс, сформированный из операций, определенных в другом месте (вспомогательный алгоритм)
Решение     Решение в зависимости от условия
Подготовка   Модификация команд, воздействующих на некоторую последующую функцию
Данные   Ввод исходных данных и вывод результатов расчета

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

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

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

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

Рисунок 6.1 – Пример блок-схемы алгоритма


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  




Подборка статей по вашей теме: