Блок-схема из кода на Rust по ГОСТ 19.701-90
Вставьте функцию на Rust — ГОСТграф построит блок-схему алгоритма по ГОСТ 19.701-90. Поддерживаются if/else, циклы for, while и loop, match и ранние return. Подходит для функций библиотек и утилит.
Пример: блок-схема из кода на Rust
fn factorial(n: i32) -> i32 {
let mut result = 1;
let mut i = 2;
while i <= n {
result *= i;
i += 1;
}
return result;
}
Особенности разбора Rust
- Для надёжного отображения финального шага лучше использовать явный return вместо хвостового выражения.
- match разворачивается в последовательность решений по веткам.
- Заимствования и времена жизни не влияют на схему — она строится по структуре управления.
Частые вопросы
Распознаётся ли хвостовое выражение без return?
Явный return надёжнее: хвостовое выражение как возвращаемое значение может не попасть в финальный блок схемы.
Как отображается match?
match превращается в лестницу решений — по одной ветке на образец.