Files
fz-lang/docs/ru/book/03_control-flow.md
T

44 lines
1.5 KiB
Markdown

# Управление потоком
FZLang поддерживает условные конструкции и отдельные блоки кода.
Условия записываются в круглых скобках, тело может быть одной инструкцией или блоком в фигурных скобках.
## Условие if
```
if (2 + 2 >= 4)
printline("two plus two is four");
else
{
printline("unexpected result");
exit(1);
}
```
Ветка `else if` является обычным `else`, за которым следует новый `if`.
Условие вычисляется, после чего ВМ переходит в одну из веток; обычно это булево значение или результат сравнения.
## Блоки
Фигурные скобки создают отдельное окружение:
```
{
int local = 10;
printline(local);
}
```
После выхода из блока его окружение уничтожается.
Локальные имена не должны использоваться за пределами блока.
## Ограничения
В текущей реализации нет циклов while или for. Повторяющееся вычисление выражается рекурсивными функциями.
---
Далее: [Функции и рекурсия](./04_functions-and-recursion.md)
Назад: [Основы и типы](./02_basics-and-types.md)