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

Для начала как уже известно существуют ГОСТы, которые строго описывают сами блок-схемы и их построение, соединения (ГОСТ 19.701–90, ГОСТ 19.002–80, ГОСТ 19.003–80). Основные элементы схем алгоритма представлены в таблице 1.1.


 

Таблица 1.1 – Основные элементы схем алгоритмов

Наименование Обозначение Функция
Блок начало-конец (пуск-остановка) или начало/завершение Элемент отображает выход во внешнюю среду и вход из внешней среды (наиболее частое приме­нение − начало и конец про­граммы). Внутри фигуры записы­вается соответствующее действие.
Блок вычислений (вычислительный блок) или процесс Выполнение одной или несколь­ких операций, обработка данных любого вида (изменение значения данных, формы представления, расположения). Внутри фигуры записывают непосредственно сами операции, например, операцию присваивания: a = 10*b + c.
Подготовка (модификация) Эта фигура отображает модифи­кацию команды или группы ко­манд с целью воздействия на некоторую последующую функ­цию. Применяется для выполне­ния операций, меняющих команды или группы команд, изменяющих программу, для установки пере­ключателя, модификации индекс­ного регистра или инициализации программы.

 


 

Продолжения таблицы 1.1.

Наименование Обозначение Функция
Логический блок (блок условия) или решение Отображает решение или функцию переключательного типа с одним входом и двумя или более альтерна­тивными выходами, из которых только один может быть выбран после вычисления условий, определенных внутри этого элемента. Вход в элемент обозначается линией, входя­щей обычно в верхнюю вершину эле­мента. Если выходов два или три, то обычно каждый выход обозначается линией, выходящей из оставшихся вершин (боковых и нижней). Если выходов больше трех, то их следует показывать одной линией, выходящей из вершины (чаще нижней) элемента, которая затем разветвляется. Соотве­тствующие результаты вычислений могут записываться рядом с линиями, отображающими эти пути. Примеры решения: в общем случае − сравнение (три выхода: >, <, =); в программиро­вании − условные операторы if (два выхода: true, false) и case (множество выходов).

 


 

Продолжения таблицы 1.1.

Наименование Обозначение Функция
Граница цикла Символ состоит из двух частей − соответственно, начало и конец цикла − операции, выполняемые внутри цикла, размещаются между ними. Условия цикла и приращения записываются внутри символа начала или конца цикла – в зависимости от типа организации цикла. Часто для изображения на блок-схеме цикла вместо данного символа используют символ условия, указывая в нём решение, а одну из линий выхода замыкают выше в блок-схеме (перед операциями цикла).
Документ Эта фигура представляет этап, на котором создается документ.
Соединитель или ссылка на текущую страницу Символ отображает вход в часть схемы и выход из другой части этой схемы. Используется для обрыва линии и про­должения её в другом месте (для избежания излишних пересечений или слишком длинных линий, а также, если схема состоит из нескольких страниц). Соответствующие соединительные сим­волы должны иметь одинаковое (при том уникальное) обозначение.

 

Продолжения таблицы 1.1.

Наименование Обозначение Функция
Ссылка на другую страницу При размещении этой фигуры на странице открывается диалоговое окно, в котором можно создать набор гиперссылок между двумя страницами блок-схемы или между фигурой «Подпроцесс» и отдельной страницей блок-схемы, на которой показаны этапы этого подпроцесса.
Комментарий Используется для более подробного описания шага, процесса или группы процессов. Описание помещается со стороны квадратной скобки и охватывается ей по всей высоте. Пунктирная линия идет к описываемому элементу, либо группе элементов (при этом группа выделяется замкнутой пунктирной линией). Также символ комментария следует использовать в тех случаях, когда объём текста, помещаемого внутри некоего символа (например, символ процесса, символ данных и др.), превышает размер самого этого символа.

Продолжения таблицы 1.1.

Наименование Обозначение Функция
Предопределенный процесс или подпроцесс Символ отображает выполнение процесса, состоящего из одной или нескольких операций, который определен в другом месте про­граммы (в подпрограмме, модуле). Внутри символа записывается название процесса и передаваемые в него данные. Например, в програм­мировании − вызов процедуры или функции.
Данные (ввод-вывод) Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод). Данный символ не определяет носителя данных (для указания типа носителя данных используются специфические сим­волы).

Данные элементы удобно создавать и соединять в специализированных программах, которых существует множество, в том числе бесплатных. Как это сделать в Visio?

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

 

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

Напомним, что решение осуществляется через дискриминант

- при корней два, и они вычисляются по формуле

- при корень один (в некоторых контекстах говорят также о двух равных или совпадающих корнях), кратности 2:

- при вещественных корней нет.

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

Особенностью данного алгоритма будет разветвляющийся процесс при проверке дискриминанта квадратного уравнения на условие D<0.








Дата добавления: 2015-09-18; просмотров: 835;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.