Цикл со стрелкой (цикл while)
Ru | En
В Дракон-схемах применяются обычные линии вместо стрелок, потому что стрелки не нужны. Стрелка показывает направление, а в языке Дракон направление потока исполнения очевидно и так. Поток идёт вниз; ветвление идёт вправо.
Эта предсказуемость делает стрелки лишними, и это хорошо, потому что стрелки отвлекают читателя. Устранение стрелок улучшает читаемость блок-схем, потому что зрительного шума становится меньше.
Есть один случай, однако, где стрелки разрешены. Поток исполнения на Дракон-схеме можно развернуть в противоположную сторону и направить вверх. Развёрнутый поток образует цикл. Чтобы сделать такое исключение из правил заметным, Drakon.Tech рисует стрелку на линии, которая идёт вверх. Благодаря такому соглашению циклы на блок-схеме бросаются в глаза.
Икона Действие с console.log(i) будет выполнена несколько раз, пока счётчик не достигнет нуля. Данная конструкция аналогична выражению do-while, которое выполняет тело цикла хотя бы один раз.
Если мы хотим проверить условие цикла перед телом цикла, мы помещаем тело цикла на правом выходе из иконы Вопрос. Таким образом мы заставляем цикл работать, как выражение while.
Более того, можно сделать цикл, который будет похож как на do-while, так и while.
Если поместить иконы перед иконой Вопрос, эта часть тела цикла будет выполнена хотя бы один раз.
Если поместить иконы на првом выходе из иконы Вопрос, эта часть тела цикла будет выполняться только после проверки условия цикла.
Икона Выбор может образовать цикл со стрелкой так же, как и икона Вопрос. В этом примере выходы из двух икон Вариант справа ведут вверх, а не вниз, образуя цикл со стрелкой.