Справочник / Блок-схема алгоритма по ГОСТ 19.701
Блок-схема алгоритма по ГОСТ 19.701: синтаксис и примеры
Алгоритм по ГОСТ 19.701: ввод, условия, циклы — пишется по-русски. Блок-схема пишется псевдокодом по-русски, по одной команде в строке. Вложенность (тело условия или цикла) задаётся отступом в 4 пробела, как в Python. Редактор сам рисует фигуры по ГОСТ 19.701-90, линии и стрелки; «Начало» и «Конец» добавляются автоматически, если их нет.
Пример
начало
ввод n
s = 0
i = 1
пока i <= n
s = s + i
i = i + 1
вывод s
конецКоротко о возможностях: Блок-схема онлайн по ГОСТ 19.701.
Готовые примеры
- Блок-схема линейного алгоритмаПример блок-схемы линейного алгоритма по ГОСТ 19
- Блок-схема с ветвлением: квадратное уравнениеПример блок-схемы разветвляющегося алгоритма по ГОСТ
- Блок-схема цикла: факториал числаПример блок-схемы циклического алгоритма по ГОСТ 19
Конструкции
Ввод и вывод данных
Параллелограмм «Данные».
ввод a, b вывод s
Действие
Любая строка без ключевого слова — прямоугольник «Процесс». Можно писать формулы и текст.
s = s + i
Условие «если»
Ромб «Решение»: ветка «да» слева, «нет» справа. Ветку «иначе» можно не писать.
если a > b
max = a
иначе
max = bНесколько условий
«иначе если» рисуется вложенным ромбом в ветке «нет».
если D > 0
вывод "два корня"
иначе если D = 0
вывод "один корень"
иначе
вывод "корней нет"Цикл «пока» (с предусловием)
Ромб с условием, тело по ветке «да», возврат стрелкой к началу проверки.
пока i <= n
s = s + i
i = i + 1Цикл «для» (с параметром)
Шестиугольник «Подготовка» с записью i = 1, n. Можно добавить шаг: для i от 1 до n шаг 2.
для i от 1 до n
f = f * iЦикл «повторять … до» (с постусловием)
Тело выполняется хотя бы раз, затем проверка; по «нет» — возврат.
повторять
ввод x
до x > 0Подпрограмма
Прямоугольник с двойными боковыми линиями — «Предопределённый процесс».
вызов Сортировка(a)
Комментарий к блоку
Текст после // выводится сбоку пунктирной скобкой (символ «Комментарий»).
s = 0 // обнуляем сумму
Начало, конец и заголовок
Заголовок пишется первой строкой. Начало и конец можно не писать — они добавятся сами.
блок-схема: Сумма чисел начало конец
Фигуры ГОСТ 19.701-90
| начало / конец | Терминатор — вход и выход из алгоритма |
| любая строка | Процесс — вычисление, присваивание |
| ввод / вывод | Данные — ввод и вывод |
| если, пока, до | Решение — проверка условия, выходы «да» и «нет» |
| для | Подготовка — заголовок цикла с параметром |
| вызов | Предопределённый процесс — подпрограмма |
| // текст | Комментарий |
Общее
| 4 пробела или Tab | тело условия или цикла |
| # текст | заметка в коде, на схему не попадает |
| <= >= != | рисуются как ≤ ≥ ≠ |
| конец если, кц | можно писать, но структуру задают отступы |
Другие виды диаграмм
- Диаграмма классов UMLКлассы, атрибуты, операции и связи между ними
- Диаграмма объектов UMLЭкземпляры классов и их значения в момент времени
- Диаграмма пакетов UMLПакеты (модули) системы и зависимости между ними
- Диаграмма компонентов UMLКомпоненты, интерфейсы и зависимости
- Диаграмма развёртывания UMLУзлы, среды выполнения и артефакты на них
- ER-диаграмма (сущность–связь)Таблицы, ключи и кратность связей (нотация IE)
- Диаграмма прецедентов UMLАктёры и варианты использования системы
- Диаграмма последовательностей UMLОбмен сообщениями между участниками во времени
- Диаграмма деятельности UMLДействия, решения, параллельные ветки и дорожки
- Диаграмма состояний UMLЖизненный цикл объекта и переходы
- Временная диаграмма UML (timing)Изменение состояний участников во времени
- Диаграмма ГантаПлан работ по дням с зависимостями и вехами
- Интеллект-карта (mind map)Идеи вокруг одной темы
- WBS — структура декомпозиции работДекомпозиция проекта на пакеты работ
- Сетевая диаграмма (nwdiag)Сети, адреса и подключённые к ним серверы
- Визуализация JSONСтруктура JSON-документа в виде дерева