Здавалка
Главная | Обратная связь

управляющие структуры

Блок-схемы

 

Методические материалы к лабораторному практикуму по дисциплинам «Информатика» и «Компьютерный практикум» для студентов специальностей:

140306 - Электроника и автоматика физических установок,

140307 - Радиационная безопасность человека и окружающей среды,

200402 - Инженерное дело в медико-биологической практике,

210101 – Физическая электроника.

 

 

Cоставил Кара-Ушанов В.Ю., доцент кафедры вычислительной техники, кандидат физико-математических наук.

 

 

Екатеринбург

Определение блок-схемы

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

Построение блок-схем регламентируется ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем (Условные обозначения и правила выполнения)».

Элементы блок-схем

 
 

1. Начало и конец

Элемент «начало» всегда самый первый, а элемент «конец» всегда самый последний элемент блок-схемы.

 

2. Процесс

 
 

Блок «процесс» соответствует этапу в алгоритме, на котором производится обработка данных. Это может быть сложная процедура обработки или простая операция типа операции присваивания. Блок сопровождается содержательной подписью.

 

 
 

3. Вводиливывод

Блоки «ввод» и «вывод» соответствует этапам в алгоритме, на которых производится ввод исходных данных или вывод результатов. Блоки сопровождается содержательной подписью в виде списка имен вводимых или выводимых переменных.

 

 
 

4. Решение

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

 

5. Предопределенный процесс

 
 

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

 

 
 

6. Модификатор

Блок «модификатор» соответствует этапу в алгоритме, на котором производится циклическая обработка данных с изменением (модификацией) управляющей переменной – параметра цикла i, для которой указывается начальное значение (1), конечное значение (10) и шаг изменения (2).

 

 
 

7. Соединитель

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

 

8. Линии потока

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


управляющие структуры

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

 

Следование


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

Структура «следование» лежит в основе т.н. линейных алгоритмов, в которых каждое действие выполняется безусловно, один единственный раз.

 

 
 

2. Ветвление

 
 

Структура «ветвление» обеспечивает выбор между двумя выполнимыми действиями A и B. Действия имеют тот же смысл, что и в случае структуры «следование». Выбор зависит от того, выполняется или не выполняется «условие». Если условие имеет значение «истина» («да»), то управление передается на ветвь A; если значением условия является «ложь» («нет»), то управление передается на ветвь B. И в том и в другом случае ветви сливаются и алгоритм имеет общую точку продолжения.

Логика управления структуры «ветвление» следует семантике «если – то – иначе». Возможен частный случай, когда одна из ветвей «пустая». Семантика этого случая может быть выражена фразой «если – то».

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

 

2.1 Выбор


В структуре «выбор» заранее планируются несколько (N) ветвей-вариантов. Передача управления на ту или иную ветвь осуществляется по значению управляющей переменной (k) - селектора варианта. Если k принимает одно из допустимых значений {1, 2, … N}, то управление передается на соответствующую ветвь или A1,илиA2, …,илиAN. В противном случае управление передается на ветвь B.

 

3. Цикл

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

Структура «цикл» имеет несколько эквивалентных реализаций. Базовой является структура «цикл с предусловием»

 

 
 

3.1 Цикл с предусловием

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

 

 
 

3.2 Цикл с постусловием

В структуре «цикл» с постусловием» условие формулируется как условие продолжения действий A, образующих тело цикла. Проверка условия следует за выполнением действий в теле цикла, поэтому структура называется «цикл с постусловием». В структуре «цикл с постусловием» действия в теле цикла выполняются обязательно хотя бы один раз. Если условие имеет значение «истина» («да»), то действия в теле цикла A выполняются повторно. Как только условие продолжения будет нарушено, т.е. примет значение «ложь» («нет»), управление будет передано за пределы цикла.

 

3.3 Цикл с параметром

 
 

В структуре «цикл с параметром» управление циклическим процессом выполнения действий в теле цикла A осуществляется при помощи управляющей переменной – параметра цикла i, для которого необходимо задать:

1) начальное значение i0

2) конечное значение ik (условие окончания)

3) шаг изменения di (закон изменения)

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

 





©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.