 |
оригинальный файл в формате word
« назад
УДК 65.011.66:002:006.354 |Группа Т55 | |[pic]
Г О С У Д А Р С Т В Е Н Н Ы Й С Т А Н Д А Р Т С О Ю З А С С Р
[pic]
|Единая система программной документации |ГОСТ 19.005-85|
| | |
|Р-СХЕМЫ АЛГОРИТМОВ И ПРОГРАММ | |
|Обозначения условные графические и правила выполнения | |
|United system for program documentation. | |
|R-charts. Graphical charts symbols and conventions for | |
|charting | |
|ОКСТУ 0019 | |
[pic]
Постановлением Государственного комитета СССР по стандартам от 27 марта
1985 г. № 893 срок введения установлен
с 01.07.86
Настоящий стандарт распространяется на алгоритмы, программы, данные и
процессы для вычислительных машин, комплексов, автоматизированных систем и
систем обработки информации независимо от их назначенияи области
применения.
Стандарт устанавливает условные графические обозначения элементови структур
Р-схем, а также правила их выполнения автоматическим и (или) ручным
способами.
Р-схема (R-chart) - нагруженный по дугам ориентированный граф, изображаемый
с помощью вертикальных и горизонтальных линий и состоящий из структур
(подграфов), каждая из которых имеет только один вход и один выход.
1. УСЛОВНЫЕ ОБОЗНАЧЕНИЯ ЭЛЕМЕНТОВ Р-СХЕМ
1.1. Перечень, наименование, обозначения и функции элементов Р-схем должны
соответствовать указанным в табл. 1.
Таблица 1
|Наименование |Обозначение и его содержание |Функция |
|1. Вершина |[pic] |Вершина Р-схемы |
| | | |
| |Окружность диаметром не менее 2 мм | |
|2. Вершина |[pic] |Выделение вершины |
|специальная | |Р-схемы |
| |Левая и правая круглые скобки на | |
| |расстоянии не менее 1 мм | |
|3. Дуга |[pic] |Направленное |
| | |соединение двух |
| |Горизонтальная линия со стрелкой а) |вершин Р-схемы |
| |справа б) слева | |
|4. Дуга |[pic] |Специальное |
|специальная | |соединение двух |
| |Две горизонтальные линии, отстоящие |вершин Р-схемы |
| |друг от друга на расстоянии 0,8 -- 3 | |
| |мм | |
|5. Линия |[pic] |Соединение по |
|соединительная |Вертикальная линия |вертикали указанных |
| | |выше элементов |
| | |Р-схемы |
|6. Комментарий |[pic] |Связь между |
| | |элементом Р-схемы и |
| |Пунктирная вертикальная (вверх или |текстом комментария.|
| |вниз) и горизонтальная (влево или | |
| |вправо) линии, оканчивающиеся | |
| |квадратной скобкой, за которой | |
| |следует текст комментария. | |
1.2. В справочном приложении 1 приведены примеры допустимых условных
обозначений элементов Р-схем, выполненных на алфавитно-цифровых устройствах
ввода-вывода.
1.3. В справочном приложении 2 приведены примеры выполнения элементов Р-
схем.
2. СТРУКТУРА Р-СХЕМ
2.1. Структуры Р-схем должны соответствовать указанным в табл. 2 или
полученным из них путем применения правил соединения структур (разд. 3).
Таблица 2
|Наименование |Обозначение и его содержание |Функция |
|1. Структура |[pic] |Последовательность |
|базовая | |переходов между вершинами |
| |Две вершины, соединенные одной и|в соответствии с |
| |более дугами любого направления |направлениями дуг. |
| |и в любом сочетании. | |
|2. Структура |[pic] |Последовательность |
|специальная | |переходов между вершинами,|
| |Две вершины, соединенные |осуществляемых специальным|
| |специальной дугой или |образом. |
| |специальной дугой и любым числом| |
| |дуг любого направления и в любом| |
| |сочетании. | |
|Примечания. |
|1. Вершина структуры, из которой исходит первая сверху дуга, называется |
|начальной. |
|2. Вершина структуры, в которую входит первая сверху дуга, называется |
|конечной. |
|3. Начальная и конечная вершины сруктуры, содержащей только специальную |
|дугу, определяются ее конкретным использованием. |
2.2. В справочном приложении 3 и на черт. 1-4 приведены примеры записи
структур Р-схем.
3. ПРАВИЛА СОЕДИНЕНИЯ СТРУКТУР Р-СХЕМ
3.1. Устанавливаются следующие соединения структур Р-схем:
. последовательное;
. параллельное;
. вложенное.
В результате их применения получаются структуры Р-схем, к которым также
применимы установленные правила их соединения.
3.1.1. Последовательное соединение структур Р-схем осуществляется путем
слияния конечной вершины и соединительной линии одной структуры с начальной
вершиной и соединительной линией другой, располагемой за ней структуры.
Если конечная вершина первой и (или) начальная вершина второй структуры
являются специальными, то в результате слияния образуется специальная
вершина, при этом соединительные линии обеих структур не сливаются.
Начальной и конечной вершинами результирующей структуры становятся
соответственно начальная вершина первой и конечная вершина второй из
соединяемых структур.
Пример последовательного соединения г структур а, б, в и а приведен на
черт. 1.
[pic]
Черт. 1
3.1.2. Параллельное соединение структур Р-схем осуществляется путем связи
соединительными линиями начальной и конечной вершин одной структуры
соответственно с начальной и конечной вершинами другой, расположенной под
ней, структуры. Начальной и конечной вершинами результирующей структуры
становятся соответственно начальная и конечная вершины первой (верхней) из
соединяемых структур.
На черт. 2 изображены примеры параллельного соединения структур; а -
приведенных на черт. 1 а, 1 б и 1 а; б - приведенных на черт. 1 в, 1 б; в -
приведенных на черт. 1 б, 1 б.
[pic]
Черт. 2
3.1.3. Вложенное соединение структур Р-схем осуществляется путем замены
дуги структуры, в которую производится вложение, на последовательное
соединение дуги того же направления и вкладываемой структуры. При этом
соединительная линия из конечной вершины вкладываемой структуры и сама
конечная вершина (если она не является конечной вершиной параллельного
соединения структур) сливаются соответственно с соединительной линией и
вершиной, в которые входила заменяемая дуга. Начальной и конечной вершинами
результирующей структуры остаются соответственно начальная и конечная
вершины структуры, в которую произвоится вложение.
Примеры вложенного соединения структур Р-схем приведены на черт. 3 и 4. На
черт. 3 вложение осуществляется путем замены дуги со стрелкой справа, а на
черт. 4 - слева.
На черт. 3 изображены примеры вложенного соединения: а - структуры 1 в в
структуру 1 б; б - последовательного соединения структур 1 б и 1 а в
структуру 1 в; в - структуры 1 в в структуру 1 в; г - структуры 2 б в
структуру 1 б.
[pic]
Черт. 3
На черт. 4 изображены примеры вложенного соединения: а - структуры 1 б в
структуру 1 б; б - последовательного соединения структур 1 в, 1 б и 1 а в
структуру 1 б; в - структуры 1 б и 2 б в структуру 1 б. структуру 1 б
[pic]
Черт. 4
4. НАДПИСИ НА ЭЛЕМЕНТАХ И СТРУКТУРАХ Р-СХЕМ
4.1. Написи на элементах и структурах Р-схем должны соответствовать
указанным в табл. 3.
4.2. В справочном приложении 4 приведены примеры выполнения надписей на
элементах и структурах Р-схем.
Таблица 1
|Наименование |Обозначение и его содержание |Функция |
|1. Надпись внутри |(СТРОКА) |Тип структуры Р-схемы, |
|специальной | |определяющий ее особое |
|вершины | |реализацию |
|2. Надпись над |[pic] |Условие прохождения по |
|дугой | |дуге |
|3. Надпись под |[pic] |Действие, выполняемой |
|дугой | |при прохождении по дуге|
|4. Надпись над |[pic] |Задает специальное |
|специальной дугой | |(определенное при |
| | |реализации) выполнение |
| | |структуры Р-схемы |
|5. Надпись под |[pic] |Действие, выполняемое |
|специальной дугой | |специальным образом при|
| | |прохождении по дуге |
|6. Надпись около |[pic] |Имя структуры Р-схемы |
|начальной вершины | | |
|структуры |Имя, записанное внутри структуры| |
| |Р-схемы около начальной ее | |
| |вершины без пробела | |
|7. Надпись в конце|[pic] |Перевод в начало (а) |
|дуги | |или в конец (б) |
| |Знаки "Звездочка" или "номер" с |структуры Р-схемы с |
| |именем в конце дуги без |указанным именем. |
| |пробелов. Имя может |При отсутствии имени |
| |отсутствовать. |переход осуществляется |
| | |в начало (а) или конец |
| | |(б) данной Р-схемы |
|Примечания. |
|1. СТРОКА - последовательность любых знаков |
|2. ЗАПИСЬ - любой текст, включая пустой, формульный, формальный (на языках|
|программирования), содержащий любые специальные знаки, таблицы, рисунки и |
|т. п. и записанный в одну и более строк таким образом, что длина любой |
|строки не превышает длину дуги, соответствующий тексту. |
|3. ИМЯ - идентификатор по ГОСТ 19781-83. |
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 приведен пример выполнения Р-схемы.
[pic]
Приложение 1
Справочное
ПРИМЕРЫ ДОПУСТИМЫХ УСЛОВНЫХ ОБОЗНАЧЕНИЙ ЭЛЕМЕНТОВ Р-СХЕМ, ВЫПОЛНЕННЫХ НА
АЛФАВИТНО-ЦИФРОВЫХ УСТРОЙСТВАХ ВВОДА-ВЫВОДА
|Наименование |Обозначение |
|1. Вершина |+ или ¤ |
| |Знак "Плюс" или "Знак денежной единицы" по ГОСТ 19767-74 |
|2. Специальная |( ) |
|вершина |Левая и правая круглые скобки |
|3. Дуга |a) -----> |
| |Последовательность знаков "Минус", заканчивающаяся знаком |
| |"Больше" |
| |б) <----- |
| |Последовательность из знака "Меньше" и следующие на ним |
| |знаков "Минус". |
|4. Специальная |=========== |
|дуга |Последовательность знаков "Равно" |
|5. Линия |! |
|соединительная |! |
| |! |
| |! |
| |Последовательность расположенных друг под другом знаков |
| |"Восклицательный знак" |
|6. Комментарий |:----[ СТРОКИ |
| |: [ ТЕКСТА |
| |: [ КОММЕНТАРИЯ |
| | |
| |Вертикальная линия задается последовательностью |
| |расположенных друг под другом знаков "Двоеточие", |
| |горизонтальная линия задается последовательностью знаков |
| |"Минус", проведенных к первому или последнему знаку |
| |"Квадратная скобка", который ставится на каждой строке |
| |комментария. |
[pic]
Приложение 2
Справочное
ПРИМЕРЫ ВЫПОЛНЕНИЯ ЭЛЕМЕНТОВ Р-СХЕМ
|Наименование |Выполнение от руки или |Выполнение |
| |автоматизированным способом на |автоматизированным |
| |графических устройствах ввода-вывода |способом на |
| | |алфавитно-цифровых |
| | |устройствах |
| | |ввода-вывода |
|1. Вершина |[pic] |+----> ---->+ |
| | | |
| | |¤----> ---->¤ |
| | | |
| | |===+---> ---->+----> |
| | |! ! |
| | |! ! |
| | | |
| | |===¤---> ---->+----> |
| | |! ! |
| | |! ! |
|2. |[pic] |--->()=== |
|Специальная | |!! |
|вершина | |===!!<--- |
| | | |
| | |====()---> |
| | |!! |
| | |--->!!<--- |
| | | |
|3. Дуга |[pic] |+------>+ ¤<-----¤ |
| | | |
| | |! ! ! ! |
| | |!------>! !<-------! |
| | |! ! ! ! |
| | | |
| | |! ! ! ! |
| | |!------>! !<-------! |
|4. |[pic] |+===========+ |
|Специальная | | |
|дуга | |--->()======+---> |
| | |!! ! |
| | |--->!!----->! |
| | | |
| | |! ! |
| | |! ! |
| | |!=====+ +=====! |
| | |! ! ! ! |
| | |!<----! !---->! |
| | | |
|5. Линия |[pic] |+---> ====+ |
|соединительна| |! ! |
|я | |!---> --->! |
| | |! ! |
| | |!<--- <---! |
| | | |
| | |--->()----> |
| | |!! |
| | |====!!<---- |
| | |!! |
| | |--->!!<---- |
| | | |
|6. |[pic] |. |
|Комментарий | |:----[ ЗАПРЕТ СИГНАЛА |
| | |: [ ПРЕРЫВАНИЯ |
| | |: |
| | |(ЗП)===================|
| | |+ |
| | |! ! |
| | |!--->+------>+----->! |
| | |! !RD : |
| | |!------>! : |
| | |: |
| | |РАСШИФРОВКА ]---: |
| | |НА СТР. 23 ] |
| | | |
[pic]
Приложение 3
Справочное
ПРИМЕРЫ ЗАПИСИ СТРУКТУР Р-СХЕМ
|Наименование |Выполнение от руки или |Выполнение автоматизированным|
| |автоматизированным способом |способом на |
| |на графических устройствах |алфавитно-цифровых |
| |ввода-вывода |устройствах ввода-вывода |
|1. Структура |[pic] | +------------->+ |
|базовая | | |
| | |()------------->() |
| | |! ! |
| | |!------------->! |
| | |! ! |
| | |!<-------------! |
| | | |
| | |+------------->+ |
| | |! ! |
| | |!------------->! |
| | |! ! |
| | |!<-------------! |
| | |! ! |
| | |!------------->! |
| | |! ! |
| | |!<-------------! |
| | | |
|1. Структура |[pic] | +==============+ |
|специальная | | |
| | |()==============() |
| | |! ! |
| | |!------------->! |
| | |! ! |
| | |!<-------------! |
| | | |
| | |+==============+ |
| | |! ! |
| | |!------------->! |
| | |! ! |
| | |!<-------------! |
| | |! ! |
| | |!------------->! |
| | |! ! |
| | |!<-------------! |
| | | |
[pic]
Приложение 4
Справочное
ПРИМЕРЫ ВЫПОЛНЕНИЯ НАДПИСЕЙ НА ЭЛЕМЕНТАХ И СТРУКТУРАХ Р-СХЕМ
|Наименование |Выполнение от руки или |Выполнение |
| |автоматизированным способом на |автоматизированным |
| |графических устройствах |способом на |
| |ввода-вывода |алфавитно-цифровых |
| | |устройствах ввода-вывода|
|1. Надпись |[pic] |======(&)----> |
|внутри вершины | |! ! |
|специальной | |----->! !-----> |
| | |! |
| | |!<---- |
| | | |
| | |(HEAD)==== |
| | |! |
| | |!---> |
| | | |
|2. Надпись над |[pic] | B[J] |
|специальной | | |
|дугой | |ЧТЕНИЕ |
| | |ДАННЫХ В |
| | |БУФЕР |
| | |<---------- |
| | | |
| | |J=1...M |
| | |========== |
| | | |
|3. Надпись под |[pic] |------------> |
|дугой или | |ПЕЧАТЬ |
|специальной | |ТАБЛИЦЫ |
|дугой | | |
| | |<---------- |
| | |K:=K+1 |
| | |F(K) |
| | | |
| | |============ |
| | |B[J]:=M[L] |
| | |L:=L+1 |
| | |J:=J+1 |
| | | |
|4. Надпись около|[pic] |+LAB=======()M1------->+|
|начальной | | |
|вершины | |! !! !|
|структуры | | |
| | |!--------->!!--->+23===!|
| | | |
| | |! ! ! !|
| | | |
| | |!---M0+<---! !---->!|
| | | |
| | | |
| | |+01---->+02---->+03---->|
| | |+ |
| | |! ! ! |
| | |! |
| | |!<------!------>!------>|
| | |! |
| | |! ! ! |
| | |!------>!------>! |
| | | |
|5. Надпись в |[pic] |+M2=======()------->+ |
|конце дуги | |! !! ! |
| | |!-------->!!------->! |
| | |! !! ! |
| | |!---> #LAB!!---->*M2! |
| | | |
| | |+----->+5----->+------>+|
| | | |
| | |! ! ! !|
| | | |
| | |!---->#!------>!--->*02!|
| | | |
| | |! ! ! |
| | |!*<-----!---->*5! |
| | | |
[pic]
Приложение 5
Справочное
ПРИМЕР ВЫПОЛНЕНИЯ Р-СХЕМЫ ПРОГРАММЫ НА ПАСКАЛЕ
Программа MINIMAX анализирует ряд числе и выдает их количество, минимальное
и максимальное числа. Признаком конца ряда чисел является число нуль.
:---[ ОПИСАТЕЛЬНАЯ ЧАСТЬ ПРОГРАММЫ]---:
: :
PROGRAM:CONST INTEGER :
+------>+-------------------->(VAR)---------->+
MINIMAX Z1='ЧИСЛЕ ПРОЧИТАНО:' N,MIN,MAX,C
Z2='НАИМЕНЬШЕЕ:'
Z3='НАИБОЛЬШЕЕ:'
+----------->+==============================+-------------->+
READLN(N) ! !WRITELN(Z1,C)
MIN:=MAXINT !N<>0 NMAX !WRITELN(Z2,MIN)
MAX:=-MAXINT!----->+----->+----->+-------->!WRITELN(Z3,MAX)
C:=0 C:=C+1!MIN:=N!MAX:=N!READLN(N)
! ! !
!----->!----->!
Традиционная линейная форма записи этой же программы имеет следующий вид:
PROGRAM MINIMAX;
(* ОПИСАТЕЛЬНАЯ ЧАСТЬ ПРОГРАММЫ *)
CONST
Z1='ЧИСЛЕ ПРОЧИТАНО:';
Z2='НАИМЕНЬШЕЕ:';
Z3='НАИБОЛЬШЕЕ:';
VAR
N,MIN,MAX,C:INTEGER;
(* КОНЕЦ ОПИСАТЕЛЬНОЙ ЧАСТИ ПРОГРАММЫ *)
BEGIN
READLN(N);
MIN:=MAXINT;
MAX:=-MAXINT;
C:=0;
WHILE N <> 0
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. На первом
листе изображено две Р-схемы, которые друг от друга отделены более чем
одним интервалом. Первая Р-схема сопровождается до, а вторая - после себя
текстом.
[pic]
Переиздание. Ноябрь 1987 г.
Конец формы
[pic]
|