Unified system for program documentation. R-charts. Graphical chart symbols and conventions for charting

ГОСТ 19.005-85

межгосударственный стандарт

ЕДИНАЯ СИСТЕМА

ПРОГРАММНОЙ ДОКУМЕНТАЦИИ

Р-СХЕМЫ АЛГОРИТМОВ
И ПРОГРАММ

ОБОЗНАЧЕНИЯ УСЛОВНЫЕ ГРАФИЧЕСКИЕ
И ПРАВИЛА ВЫПОЛНЕНИЯ

Москва

Стандартинформ

2010

МЕЖГОСУДАРСТВЕННЫЙ СТАНДАРТ

Единая система программной документации

Р-СХЕМЫ АЛГОРИТМОВ И ПРОГРАММ

Обозначения условные графические и правила выполнения

Unified system for program documentation. R-charts.
Graphical chart symbols and conventions for charting

ГОСТ
19.005-85

Постановлением Государственного комитета СССР по стандартам от 27 марта 1985 г. № 893 дата введения установлена

01.07.86

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

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

Р-схема (R-chart) - нагруженный по дугам ориентированный граф, изображаемый с помощью вертикальных и горизонтальных линий и состоящий из структур (подграфов), каждая из которых имеет только один вход и один выход.

1. УСЛОВНЫЕ ОБОЗНАЧЕНИЯ ЭЛЕМЕНТОВ Р-СХЕМ

1.1. Перечень, наименование, обозначение и функции элементов Р-схем должны соответствовать указанным в табл. 1.

1.2. В приложении 1 приведены примеры допустимых условных обозначений элементов Р-схем, выполненных на алфавитно-цифровых устройствах ввода-вывода.

1.3. В приложении 2 приведены примеры выполнения элементов Р-схем.

Таблица 1

Наименование

Обозначение и его содержание

Функция

1. Вершина

Окружность диаметром не менее 2 мм

Вершина Р-схемы

2. Вершина специальная

Левая и правая круглые скобки на расстоянии не менее 1 мм

Выделение вершины Р-схемы

3. Дуга

а)

б)

Горизонтальная линия со стрелкой а) справа б) слева

Направленное соединение двух вершин Р-схемы

4. Дуга специальная

Две горизонтальные линии, отстоящие друг от друга на расстоянии 0,8 - 3 мм

Специальное соединение двух вершин Р-схемы

5. Линия соединительная

Вертикальная линия

Соединение по вертикали указанных выше элементов Р-схемы

6. Комментарий

Пунктирная вертикальная (вверх или вниз) и горизонтальная (влево или вправо) линии, оканчивающиеся квадратной скобкой, за которой следует текст комментария

Связь между элементом Р-схемы и текстом комментария

2. СТРУКТУРЫ Р-СХЕМ

2.1. Структуры Р-схем должны соответствовать указанным в табл. 2 или полученным из них путем применения правил соединения структур (разд. 3).

Таблица 2

Наименование

Обозначение и его содержание

Функция

1. Структура базовая

Две вершины, соединенные одной и более дугами любого направления и в любом сочетании

Последовательность переходов между вершинами в соответствии с направлением дуг

2. Структура специальная

Две вершины, соединенные специальной дугой или специальной дугой и любым числом дуг любого направления и в любом сочетании

Последовательность переходов между вершинами, осуществляемых специальным образом

Примечания:

1. Вершина структуры, из которой исходит первая сверху дуга, называется начальной.

2. Вершина структуры, в которую входит первая сверху дуга, называется конечной.

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

2.2. В приложении 3 и на черт. 1 - 4 приведены примеры записи структур Р-схем.

3. ПРАВИЛА СОЕДИНЕНИЯ СТРУКТУР Р-СХЕМ

3.1. Устанавливаются следующие соединения структур Р-схем:

последовательное;

параллельное;

вложенное.

В результате их применения получаются структуры Р-схем, к которым также применимы установленные правила их соединения.

3.1.1. Последовательное соединение структур Р-схем осуществляется путем слияния конечной вершины и соединительной линии одной структуры с начальной вершиной и соединительной линией другой, располагаемой за ней структуры. Если конечная вершина первой и (или) начальная вершина второй структуры являются специальными, то в результате слияния образуется специальная вершина, при этом соединительные линии обеих структур не сливаются. Начальной и конечной вершинами результирующей структуры становятся соответственно начальная вершина первой и конечная вершина второй из соединяемых структур.

Пример последовательного соединения г структур а, б, в и а приведен на черт. 1.

Черт. 1

3.1.2. Параллельное соединение структур Р-схем осуществляется путем связи соединительными линиями начальной и конечной вершин одной структуры соответственно с начальной и конечной вершинами другой, расположенной под ней структуры. Начальной и конечной вершинами результирующей структуры становятся соответственно начальная и конечная вершины первой (верхней) из соединяемых структур.

На черт. 2 изображены примеры параллельного соединения структур: а - приведенных на черт. 1а, 1б и 1а; б - приведенных на черт. 1в и 1б; в - приведенных на черт. 1б и 1б.

Черт. 2

3.1.3. Вложенное соединение структур Р-схем осуществляется путем замены дуги структуры, в которую производится вложение, на последовательное соединение дуги того же направления и вкладываемой структуры. При этом соединительная линия из конечной вершины вкладываемой структуры и сама конечная вершина (если она не является конечной вершиной параллельного соединения структур) сливаются соответственно с соединительной линией и вершиной, в которые входила заменяемая дуга. Начальной и конечной вершинами результирующей структуры остаются соответственно начальная и конечная вершины структуры, в которую производится вложение.

Примеры вложенного соединения структур Р-схем приведены на черт. 3 и 4. На черт. 3 вложение осуществляется путем замены дуги со стрелкой справа, а на черт. 4 - слева.

На черт. 3 изображены примеры вложенного соединения: а - структуры 1в в структуру 1б; б - последовательного соединения структур 1б и 1а в структуру 1в; в - структуры 1в в структуру 1в; г - структуры 2б в структуру 1б.

Черт. 3

На черт. 4 изображены примеры вложенного соединения: а - структуры 1б в структуру 1б; б - последовательного соединения структур 1в, 1б и 1а в структуру 1б; в - последовательного соединения структур 1б и 2б в структуру 1б.

Черт. 4

4. НАДПИСИ НА ЭЛЕМЕНТАХ И СТРУКТУРАХ Р-СХЕМ

4.1. Надписи на элементах и структурах Р-схем должны соответствовать указанным в табл. 3.

4.2. В приложении 4 приведены примеры выполнения надписей на элементах и структурах Р-схем.

5. ПРАВИЛА ВЫПОЛНЕНИЯ Р-СХЕМ

5.1. Р-схемы в программных документах выполняются на листах формы 1 или формы 2 в соответствии с ГОСТ 19.106-78.

5.2. На одном листе может располагаться одна или несколько без переноса Р-схем, каждая из которых может сопровождаться текстом, записываемым до и (или) после нее. Правила оформления текстов Р-схем определяются при реализации. Текст Р-схемы, текст ее комментария и ЗАПИСИ на элементах Р-схем для одного способа выполнения (ручного или автоматического) должны иметь одинаковый интервал между строками.

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

5.4. Расстояние между Р-схемой и сопровождающим ее текстом, а также между Р-схемами должно быть больше одного интервала между строками ЗАПИСЕЙ на элементах Р-схем.

Расстояние между Р-схемой и текстом документа должно быть больше одного интервала между строками текста документа.

5.5. Р-схемы и сопровождающие их тексты при ручном изготовлении должны быть выполнены черными чернилами, пастой или тушью, иметь одинаковую толщину линий и шрифт, соответствующий ГОСТ 2.304-81.

Специальные знаки (*, #, круглые скобки), используемые при изображении Р-схем, должны по высоте не превышать 1,5h, где h - максимальная высота строки ЗАПИСЕЙ на элементах Р-схемы.

5.6. Расстояние между ЗАПИСЯМИ, расположенными одна под другой на разных дугах одной Р-схемы, должно быть больше одного интервала между строками ЗАПИСЕЙ на элементах Р-схем.

5.7. Квадратная скобка в комментарии должна охватывать текст комментария.

5.8. Расстояние сверху и снизу от текста комментария должно быть больше одного интервала между строками текста комментария.

5.9. В приложении 5 приведен пример выполнения Р-схемы.

Таблица 3

Наименование

Обозначение и его содержание

Функция

1. Надпись внутри специальной вершины

(СТРОКА)

Тип структуры Р-схемы, определяющий ее особую реализацию

2, Надпись над дугой

ЗАПИСЬ

Условие прохождения по дуге

3. Надпись под дугой

ЗАПИСЬ

Действие, выполняемое при прохождении по дуге

4, Надпись над специальной дугой

ЗАПИСЬ

Задает специальное (определенное при реализации) выполнение структуры Р-схемы

5. Надпись под специальной дугой

ЗАПИСЬ

Действие, выполняемое специальным образом при прохождении по дуге

6. Надпись около начальной вершины структуры

а)  ИМЯ

б)  ИМЯ

Имя, записанное внутри структуры Р-схемы около начальной ее вершины без пробела

Имя структуры Р-схемы

7. Надпись в конце дуги

а)  * ИМЯ

Переход в начало (а) или в конец (б) структуры Р-схемы с указанным именем

б)  # ИМЯ

Знаки «Звездочка» или «номер» с именем в конце дуги без пробелов. Имя может отсутствовать

При отсутствии имени переход осуществляется в начало (а) или конец (б) данной Р-схемы

Примечания:

1. СТРОКА - последовательность любых знаков.

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

3. ИМЯ - идентификатор по ГОСТ 19781-90.

ПРИЛОЖЕНИЕ 1

Справочное

ПРИМЕРЫ ДОПУСТИМЫХ УСЛОВНЫХ ОБОЗНАЧЕНИЙ ЭЛЕМЕНТОВ Р-СХЕМ, ВЫПОЛНЕННЫХ НА АЛФАВИТНО-ЦИФРОВЫХ УСТРОЙСТВАХ ВВОДА-ВЫВОДА

Наименование

Обозначение

1. Вершина

+ или

Знак «Плюс» или «Знак денежной единицы» по ГОСТ 19767-74

2. Вершина специальная

Левая и правая круглые скобки

3. Дуга

а)

Последовательность знаков «Минус», заканчивающаяся знаком «Больше»

б)

Последовательность из знака «Меньше» и следующих за ним знаков «Минус»

4. Дуга специальная

Последовательность знаков «Равно»

5. Линия соединительная

!

!

!

Последовательность расположенных друг под другом знаков «Восклицательный знак»

6. Комментарий

: ----[ строки

:       [ текста

:       [ комментария

Вертикальная линия задается последовательностью расположенных друг под другом знаков «Двоеточие», горизонтальная линия задается последовательностью знаков «Минус», проведенных к первому или последнему знаку «Квадратная скобка», который ставится на каждой строке текста комментария

С 1 января 1988 г. действует ГОСТ 27465-87 взамен ГОСТ 19767-74.

ПРИЛОЖЕНИЕ 2

Справочное

ПРИМЕРЫ ВЫПОЛНЕНИЯ ЭЛЕМЕНТОВ Р-СХЕМ

Наименование

Выполнение от руки или автоматизированным способом на графических устройствах ввода-вывода

Выполнение автоматизированным способом на алфавитно-цифровых устройствах ввода-вывода

1. Вершина

2. Вершина специальная

3. Дуга

4. Дуга специальная

5. Линия соединительная

6. Комментарий

ПРИЛОЖЕНИЕ 3

Справочное

ПРИМЕРЫ ЗАПИСИ СТРУКТУР Р-СХЕМ

Наименование

Выполнение от руки или автоматизированным способом на графических устройствах ввода-вывода

Выполнение автоматизированным способом на алфавитно-цифровых устройствах ввода-вывода

1. Структура базовая

2. Структура специальная

ПРИЛОЖЕНИЕ 4

Справочное

ПРИМЕРЫ ВЫПОЛНЕНИЯ НАДПИСЕЙ НА ЭЛЕМЕНТАХ И СТРУКТУРАХ Р-СХЕМ

Наименование

Выполнение от руки или автоматизированным способом на графических устройствах ввода-вывода

Выполнение автоматизированным способом на алфавитно-цифровых устройствах ввода-вывода

1. Надпись внутри вершины специальной

2. Надпись над дугой или специальной дугой

3. Надпись под дугой или специальной дугой

4. Надпись около начальной вершины структуры

5. Надпись в конце дуги

ПРИЛОЖЕНИЕ 5

Справочное

ПРИМЕР ВЫПОЛНЕНИЯ Р-СХЕМЫ ПРОГРАММЫ НА ПАСКАЛЕ

Программа MINIMAX анализирует ряд чисел и выдает их количество, минимальное и максимальное числа. Признаком конца ряда чисел является число нуль.

Традиционная линейная форма записи этой же программы имеет следующий вид:

PROGRAM MINIMAX;

(* ОПИСАТЕЛЬНАЯ ЧАСТЬ ПРОГРАММЫ *)

CONST

Z1 = ¢ЧИСЕЛ ПРОЧИТАНО:¢;

Z2 = ¢НАИМЕНЬШЕЕ:¢;

Z3 = ¢НАИБОЛЬШЕЕ:¢;

VAR

N, MIN, MAX, C: INTEGER;

(* КОНЕЦ ОПИСАТЕЛЬНОЙ ЧАСТИ ПРОГРАММЫ *)

BEGIN

READLN(N);

MIN: = MAXINT;

MAX: = -MAXINT,

C: = 0

WHILE N < > 0 DO

BEGIN

C: = C + 1;

IF N < MIN

THEN MIN: = N;

IF N > MAX

THEN MAX: = N;

READLN(N)

END;

WRITELN(Z1, C);

WRITELN(Z2, MIN);

WRITELN(Z3, MAX)

END.

В целом приложение 5 оформлено в соответствии с настоящим стандартом как сочетание ручного и автоматического способов. Р-схемы выполнены на двух листах формы 1 (в поле 3 - текст документа) по ГОСТ 19.106-78. На первом листе изображено две Р-схемы, которые друг от друга отделены более чем одним интервалом. Первая Р-схема сопровождается до, а вторая - после себя текстом.

СОДЕРЖАНИЕ

1. Условные обозначения элементов р-схем.. 1

2. Структуры р-схем.. 2

3. Правила соединения структур р-схем.. 3

4. Надписи на элементах и структурах р-схем.. 4

5. Правила выполнения р-схем.. 4

Приложение 1. Примеры допустимых условных обозначений элементов р-схем, выполненных на алфавитно-цифровых устройствах ввода-вывода. 5

Приложение 2. Примеры выполнения элементов р-схем.. 6

Приложение 3. Примеры записи структур р-схем.. 7

Приложение 4. Примеры выполнения надписей на элементах и структурах р-схем.. 8

Приложение 5. Пример выполнения р-схемы программы на паскале. 10