Можно по-разному изображать алгоритмы.
Но даже к самой традиционной блок-схеме, правила которой регламентированы Гостом N 19 у меня есть пара каверзных вопросов.
1)как быть если некая формула включает в себя значения каких-то еще функций. Например
Есть стандартная нотация для подпроцесса (процедуры), но для процесса, возвращающего результат (функции) нет. Тогда по-моему, правильно так
Хотя приходится неоправданно вводить промежуточные переменные
Такое типично скажем, для языка Фортран в котором для реализации формулы есть даже т.н. оператор-функция. Но вообще говоря более общий вид задания функции -даже не формулой а своим алгоритмом. И тогда
заменить вызов функции прямым написанием формулы в главном алгоритме не удастся. Как быть?
2)можно ли при оформлении 2-х циклов с общим началом писать их в одном а не в двух блоках начала цикла, т.е. так
3) Можно ли при оформлении блок-схем математических алгоритмов использовать 2-х и многобуквенные обозначения переменных наподобие идентификатора переменной в яз программирования. В математике в формулах стремятся использовать 1-символьные имена переменных (ну может быть с верхним или нижним индексом). Ведь если это можно тогда надо для обозначения оператора умножения использовать точку или *
Иначе непонятно, где кончился идентификатор одной и начался идентификатор другой переменной.(а то админы этого и других научных форумов бьются насмерть за то чтобы в формулах не писать точки для знака умножения, а как тогда в блок-схемах?)
4)Некоторые студенты любят на блок-схемах конкретных алгоритмов рисовать блоки общего вида типа "составление модели задачи", "подготовка данных" и т.п. Мне кажется это недопустимо. Алгоритм на то и алгоритм, что конкретен и лишних обозначений нет. Хотя блок-схемы часто используют не только для оформления математических алгоритмов, но и каких-то действий, бизнес-процессов. Тогда - да, в таком стиле
5)Хотелось бы получить ответ на тему альтернативных официальных способах оформления алгоритмов. Например, есть язык Дракон. Являются ли его схемы стандартом.
6)хочу коснуться вопроса связи CASE-диаграммы с моделью или алгоритмом. Конечно, скажем, IDEF0, IDEF-3 или DFD-диаграммы это не алгоритмы, это скорее выбор уровня детализации модели. Мне кажется переходя от нее к классической блок схеме, можно сказать, что каждому элементу CASE-диаграммы (работе) соответствует подпроцесс (процедура) классической блок-схемы. Так ли это?