Подпрограммы
Алгоритм-функция
алг цел квадрат(цел x)
нач
знач := x * x
конВызов:
вывод квадрат(5) | 25знач — возвращаемое значение. Тип результата указывается после алг.
Алгоритм-процедура
Процедура ничего не возвращает, а выполняет действие:
алг печать_линии(цел n)
нач
нц для i от 1 до n
вывод "-"
кц
вывод
конпечать_линии(20)Параметры
Параметры перечисляются в скобках с типами:
алг цел сумма(цел a, цел b)
нач
знач := a + b
конЕсли параметров нет, скобки можно опустить.
Рекурсия
Алгоритм может вызывать сам себя:
алг цел факт(цел n)
нач
если n <= 1 то
знач := 1
иначе
знач := n * факт(n - 1)
все
конвывод факт(5) | 120У рекурсии обязательно должно быть условие остановки, иначе переполнится стек.
Где объявлять
Подпрограммы размещаются после основного алгоритма (или перед ним, в
зависимости от среды). Основной алгоритм в КуМир обычно называется алг
без параметров.